Python网络数据采集
书籍作者:米切尔 |
ISBN:9787115416292 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:1088 |
创建日期:2021-02-14 |
发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
本书采用简洁强大的Python语言,介绍了网络数据采集,并为采集新式网络中的各种数据类型提供了全面的指导。第1部分重点介绍网络数据采集的基本原理:如何用Python从网络服务器请求信息,如何对服务器的响应进行基本处理,以及如何以自动化手段与网站进行交互。第二部分介绍如何用网络爬虫测试网站,自动化处理,以及如何通过更多的方式接入网络。
作者简介
Ryan Mitchell,数据科学家、软件工程师,目前在波士顿LinkeDrive公司负责开发公司的API和数据分析工具。此前,曾在Abine公司构建网络爬虫和网络机器人。她经常做网络数据采集项目的咨询工作,主要面向金融和零售业。另著有Instant Web Scraping with Java。
编辑推荐
网络上的数据量越来越大,单靠浏览网页获取信息越来越困难,如何有效地提取并利用信息已成为一个巨大的挑战。本书采用简洁强大的Python语言,全面介绍网络数据采集技术,教你从不同形式的网络资源中自由地获取数据。你将学会如何使用Python脚本和网络API一次性采集并处理成千上万个网页上的数据。
本书适合熟悉Python的程序员、安全专业人士、网络管理员阅读。书中不仅介绍了网络数据采集的基本原理,还深入探讨了更高级的主题,比如分析原始数据、用网络爬虫测试网站等。此外,书中还提供了详细的代码示例,以帮助你更好地理解书中的内容。
通过阅读本书,你将能够:
解析复杂的HTML页面
遍历多个网页和网站
了解API的基本概念和工作原理
学习存储数据的方法
下载、读取并抽取网络文档中的数据
使用工具和方法清洗格式异常的数据
读取并处理自然语言
越过表单和登录窗口采集数据
学习采集JavaScript的方法
学习图像处理和文字识别方法
目录
译者序 ix
前言 xi
第一部分 创建爬虫
第1章 初见网络爬虫 2
1.1 网络连接 2
1.2 BeautifulSoup简介 4
1.2.1 安装BeautifulSoup 5
1.2.2 运行BeautifulSoup 7
1.2.3 可靠的网络连接 8
第2章 复杂HTML解析 11
2.1 不是一直都要用锤子 11
2.2 再端一碗BeautifulSoup 12
2.2.1 BeautifulSoup的find()和findAll() 13
2.2.2 其他BeautifulSoup对象 15
2.2.3 导航树 16
2.3 正则表达式 19
2.4 正则表达式和BeautifulSoup 23
2.5 获取属性 24
2.6 Lambda表达式 24
2.7 超越BeautifulSoup 25
第3 章 开始采集 26
3.1 遍历单个域名 26
3.2 采集整个网站 30
3.3 通过互联网采集 34
3.4 用Scrapy 采集 38
第4 章 使用API 42
4.1 API 概述 43
4.2 API 通用规则 43
4.2.1 方法 44
4.2.2 验证 44
4.3 服务器响应 45
4.4 Echo Nest 46
4.5 Twitter API 48
4.5.1 开始 48
4.5.2 几个示例 50
4.6 Google API 52
4.6.1 开始 52
4.6.2 几个示例 53
4.7 解析JSON 数据 55
4.8 回到主题 56
4.9 再说一点API 60
第5 章 存储数据 61
5.1 媒体文件 61
5.2 把数据存储到CSV 64
5.3 MySQL 65
5.3.1 安装MySQL 66
5.3.2 基本命令 68
5.3.3 与Python 整合 71
5.3.4 数据库技术与最佳实践 74
5.3.5 MySQL 里的“六度空间游戏” 75
5.4 Email 77
第6 章 读取文档 80
6.1 文档编码 80
6.2 纯文本 81
6.3 CSV 85
6.4 PDF 87
6.5 微软Word 和.docx 88
第二部分 高级数据采集
第7 章 数据清洗 94
7.1 编写代码清洗数据 94
7.2 数据存储后再清洗 98
第8 章 自然语言处理 103
8.1 概括数据 104
8.2 马尔可夫模型 106
8.3 自然语言工具包 112
8.3.1 安装与设置 112
8.3.2 用NLTK 做统计分析 113
8.3.3 用NLTK 做词性分析 115
8.4 其他资源 119
第9 章 穿越网页表单与登录窗口进行采集 120
9.1 Python Requests 库 120
9.2 提交一个基本表单 121
9.3 单选按钮、复选框和其他输入 123
9.4 提交文件和图像 124
9.5 处理登录和cookie 125
9.6 其他表单问题 127
第10 章 采集JavaScript 128
10.1 JavaScript 简介 128
10.2 Ajax 和动态HTML 131
10.3 处理重定向 137
第11 章 图像识别与文字处理 139
11.1 OCR 库概述 140
11.1.1 Pillow 140
11.1.2 Tesseract 140
11.1.3 NumPy 141
11.2 处理格式规范的文字 142
11.3 读取验证码与训练Tesseract 146
11.4 获取验证码提交答案 151
第12 章 避开采集陷阱 154
12.1 道德规范 154
12.2 让网络机器人看起来像人类用户 155
12.2.1 修改请求头 155
12.2.2 处理cookie 157
12.2.3 时间就是一切 159
12.3 常见表单安全措施 159
12.3.1 隐含输入字段值 159
12.3.2 避免蜜罐 160
12.4 问题检查表 162
第13 章 用爬虫测试网站 164
13.1 测试简介 164
13.2 Python 单元测试 165
13.3 Selenium 单元测试 168
13.4 Python 单元测试与Selenium 单元测试的选择 172
第14 章 远程采集 174
14.1 为什么要用远程服务器 174
14.1.1 避免IP 地址被封杀 174
14.1.2 移植性与扩展性 175
14.2 Tor 代理服务器 176
14.3 远程主机 177
14.3.1 从网站主机运行 178
14.3.2 从云主机运行 178
14.4 其他资源 179
14.5 勇往直前 180
附录A Python 简介 181
附录B 互联网简介 184
附录C 网络数据采集的法律与道德约束 188
作者简介 200
封面介绍 200
Python网络数据采集的书评
似乎所有的“分号”都应该是“冒号”
第三章有好几个地方出现“分号”,但又实在不明白哪里有分号,只好查了原文。 原文是 colons,也就是冒号。 写在这里,给其他同学提个醒。 : 这是冒号 ; 这是分号 公平地说,原书中也有一些低级错误,比如第.........
2016-06-05 18:15
用python3讲一个完整的数据爬取和清洗的过程
最近刚学了python3,看了一些讲语法的书籍和练手的题目,感觉这本书是一个比较好的系统的利用python完成从数据爬取到数据清洗整个流程的实践过程。觉得自己很有必要实践一下。刚刚看了下试读章节,15年出的英文版.........
2016-04-23 23:03
很好的一本书
作者显然是此行达人,踩坑踩多了都是直接上经验。 书里的代码很优美、正规并且很简洁,运用了大量的递归算法和正则表达式。但是有些地方译者翻译的有误,比如第31页,倒数第六行冒号翻译成了分号,显然运行了源码.........
2016-04-25 14:13
真的很合适入门的同学
诚然,这本书里面提到的一些python库不一定是最好的,但是整个爬虫的思路,还是非常值得大家借鉴。 其实python的语法,以及爬虫的代码段,都不难,就是写爬虫的过程中,需要注意的事项和有可能踩到的坑,是我比.........
2016-12-12 12:22
标签
python,爬虫,数据挖掘,Python,计算机,编程,计算机科学,Programming