Python 3网络爬虫开发实战

Python 3网络爬虫开发实战
9.0
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
出版社: 人民邮电出版社
2018-04
版次: 1
ISBN: 9787115480347
定价: 99.00
装帧: 平装
开本: 16开
纸张: 胶版纸
  • 本书介绍了如何利用Python 3开发网络爬虫,书中首先介绍了环境配置和基础知识,然后讨论了urllib、requests、正则表达式、Beautiful Soup、XPath、pyquery、数据存储、Ajax数据爬取等内容,接着通过多个案例介绍了不同场景下如何实现数据爬取,最后介绍了pyspider框架、Scrapy框架和分布式爬虫。  
    本书适合Python程序员阅读。 
    崔庆才 
    北京航空航天大学硕士,静觅博客(https://cuiqingcai.com/)博主,爬虫博文访问量已过百万,喜欢钻研,热爱生活,乐于分享。欢迎关注个人微信公众号“进击的Coder”。 
    第1章 开发环境配置  1 
    1.1 Python 3的安装  1 
    1.1.1 Windows下的安装  1 
    1.1.2 Linux下的安装  6 
    1.1.3 Mac下的安装  8 
    1.2 请求库的安装  10 
    1.2.1 requests的安装  10 
    1.2.2 Selenium的安装  11 
    1.2.3 ChromeDriver的安装  12 
    1.2.4 GeckoDriver的安装  15 
    1.2.5 PhantomJS的安装  17 
    1.2.6 aiohttp的安装  18 
    1.3 解析库的安装  19 
    1.3.1 lxml的安装  19 
    1.3.2 Beautiful Soup的安装  21 
    1.3.3 pyquery的安装  22 
    1.3.4 tesserocr的安装  22 
    1.4 数据库的安装  26 
    1.4.1 MySQL的安装  27 
    1.4.2 MongoDB的安装  29 
    1.4.3 Redis的安装  36 
    1.5 存储库的安装  39 
    1.5.1 PyMySQL的安装  39 
    1.5.2 PyMongo的安装  39 
    1.5.3 redis-py的安装  40 
    1.5.4 RedisDump的安装  40 
    1.6 Web库的安装  41 
    1.6.1 Flask的安装  41 
    1.6.2 Tornado的安装  42 
    1.7 App爬取相关库的安装  43 
    1.7.1 Charles的安装  44 
    1.7.2 mitmproxy的安装  50 
    1.7.3 Appium的安装  55 
    1.8 爬虫框架的安装  59 
    1.8.1 pyspider的安装  59 
    1.8.2 Scrapy的安装  61 
    1.8.3 Scrapy-Splash的安装  65 
    1.8.4 Scrapy-Redis的安装  66 
    1.9 部署相关库的安装  67 
    1.9.1 Docker的安装  67 
    1.9.2 Scrapyd的安装  71 
    1.9.3 Scrapyd-Client的安装  74 
    1.9.4 Scrapyd API的安装  75 
    1.9.5 Scrapyrt的安装  75 
    1.9.6 Gerapy的安装  76 
    第2章 爬虫基础  77 
    2.1 HTTP基本原理  77 
    2.1.1 URI和URL  77 
    2.1.2 超文本  78 
    2.1.3 HTTP和HTTPS  78 
    2.1.4 HTTP请求过程  80 
    2.1.5 请求  82 
    2.1.6 响应  84 
    2.2 网页基础  87 
    2.2.1 网页的组成  87 
    2.2.2 网页的结构  88 
    2.2.3 节点树及节点间的关系  90 
    2.2.4 选择器  91 
    2.3 爬虫的基本原理  93 
    2.3.1 爬虫概述  93 
    2.3.2 能抓怎样的数据  94 
    2.3.3 JavaScript渲染页面  94 
    2.4 会话和Cookies  95 
    2.4.1 静态网页和动态网页  95 
    2.4.2 无状态HTTP  96 
    2.4.3 常见误区  98 
    2.5 代理的基本原理  99 
    2.5.1 基本原理  99 
    2.5.2 代理的作用  99 
    2.5.3 爬虫代理  100 
    2.5.4 代理分类  100 
    2.5.5 常见代理设置  101 
    第3章 基本库的使用  102 
    3.1 使用urllib  102 
    3.1.1 发送请求  102 
    3.1.2 处理异常  112 
    3.1.3 解析链接  114 
    3.1.4 分析Robots协议  119 
    3.2 使用requests  122 
    3.2.1 基本用法  122 
    3.2.2 高级用法  130 
    3.3 正则表达式  139 
    3.4 抓取猫眼电影排行  150 
    第4章 解析库的使用  158 
    4.1 使用XPath  158 
    4.2 使用Beautiful Soup  168 
    4.3 使用pyquery  184 
    第5章 数据存储  197 
    5.1 文件存储  197 
    5.1.1 TXT文本存储  197 
    5.1.2 JSON文件存储  199 
    5.1.3 CSV文件存储  203 
    5.2 关系型数据库存储  207 
    5.2.1 MySQL的存储  207 
    5.3 非关系型数据库存储  213 
    5.3.1 MongoDB存储  214 
    5.3.2 Redis存储  221 
    第6章 Ajax数据爬取  232 
    6.1 什么是Ajax  232 
    6.2 Ajax分析方法  234 
    6.3 Ajax结果提取  238 
    6.4 分析Ajax爬取今日头条街拍美图  242 
    第7章 动态渲染页面爬取  249 
    7.1 Selenium的使用  249 
    7.2 Splash的使用  262 
    7.3 Splash负载均衡配置  286 
    7.4 使用Selenium爬取淘宝商品  289 
    第8章 验证码的识别  298 
    8.1 图形验证码的识别  298 
    8.2 极验滑动验证码的识别  301 
    8.3 点触验证码的识别  311 
    8.4 微博宫格验证码的识别  318 
    第9章 代理的使用  326 
    9.1 代理的设置  326 
    9.2 代理池的维护  333 
    9.3 付费代理的使用  347 
    9.4 ADSL拨号代理  351 
    9.5 使用代理爬取微信公众号文章  364 
    第10章 模拟登录  379 
    10.1 模拟登录并爬取GitHub  379 
    10.2 Cookies池的搭建  385 
    第11章 App的爬取  398 
    11.1 Charles的使用  398 
    11.2 mitmproxy的使用  405 
    11.3 mitmdump爬取“得到”App电子书 
    信息  417 
    11.4 Appium的基本使用  423 
    11.5 Appium爬取微信朋友圈  433 
    11.6 Appium+mitmdump爬取京东商品  437 
    第12章 pyspider框架的使用  443 
    12.1 pyspider框架介绍  443 
    12.2 pyspider的基本使用  445 
    12.3 pyspider用法详解  459 
    第13章 Scrapy框架的使用  468 
    13.1 Scrapy框架介绍  468 
    13.2 Scrapy入门  470 
    13.3 Selector的用法  480 
    13.4 Spider的用法  486 
    13.5 Downloader Middleware的用法  487 
    13.6 Spider Middleware的用法  494 
    13.7 Item Pipeline的用法  496 
    13.8 Scrapy对接Selenium  506 
    13.9 Scrapy对接Splash  511 
    13.10 Scrapy通用爬虫  516 
    13.11 Scrapyrt的使用  533 
    13.12 Scrapy对接Docker  536 
    13.13 Scrapy爬取新浪微博  541 
    第14章 分布式爬虫  555 
    14.1 分布式爬虫原理  555 
    14.2 Scrapy-Redis源码解析  558 
    14.3 Scrapy分布式实现  564 
    14.4 Bloom Filter的对接  569 
    第15章 分布式爬虫的部署  577 
    15.1 Scrapyd分布式部署  577 
    15.2 Scrapyd-Client的使用  582 
    15.3 Scrapyd对接Docker  583 
    15.4 Scrapyd批量部署  586 
    15.5 Gerapy分布式管理  590 
      
  • 内容简介:
    本书介绍了如何利用Python 3开发网络爬虫,书中首先介绍了环境配置和基础知识,然后讨论了urllib、requests、正则表达式、Beautiful Soup、XPath、pyquery、数据存储、Ajax数据爬取等内容,接着通过多个案例介绍了不同场景下如何实现数据爬取,最后介绍了pyspider框架、Scrapy框架和分布式爬虫。  
    本书适合Python程序员阅读。 
  • 作者简介:
    崔庆才 
    北京航空航天大学硕士,静觅博客(https://cuiqingcai.com/)博主,爬虫博文访问量已过百万,喜欢钻研,热爱生活,乐于分享。欢迎关注个人微信公众号“进击的Coder”。 
  • 目录:
    第1章 开发环境配置  1 
    1.1 Python 3的安装  1 
    1.1.1 Windows下的安装  1 
    1.1.2 Linux下的安装  6 
    1.1.3 Mac下的安装  8 
    1.2 请求库的安装  10 
    1.2.1 requests的安装  10 
    1.2.2 Selenium的安装  11 
    1.2.3 ChromeDriver的安装  12 
    1.2.4 GeckoDriver的安装  15 
    1.2.5 PhantomJS的安装  17 
    1.2.6 aiohttp的安装  18 
    1.3 解析库的安装  19 
    1.3.1 lxml的安装  19 
    1.3.2 Beautiful Soup的安装  21 
    1.3.3 pyquery的安装  22 
    1.3.4 tesserocr的安装  22 
    1.4 数据库的安装  26 
    1.4.1 MySQL的安装  27 
    1.4.2 MongoDB的安装  29 
    1.4.3 Redis的安装  36 
    1.5 存储库的安装  39 
    1.5.1 PyMySQL的安装  39 
    1.5.2 PyMongo的安装  39 
    1.5.3 redis-py的安装  40 
    1.5.4 RedisDump的安装  40 
    1.6 Web库的安装  41 
    1.6.1 Flask的安装  41 
    1.6.2 Tornado的安装  42 
    1.7 App爬取相关库的安装  43 
    1.7.1 Charles的安装  44 
    1.7.2 mitmproxy的安装  50 
    1.7.3 Appium的安装  55 
    1.8 爬虫框架的安装  59 
    1.8.1 pyspider的安装  59 
    1.8.2 Scrapy的安装  61 
    1.8.3 Scrapy-Splash的安装  65 
    1.8.4 Scrapy-Redis的安装  66 
    1.9 部署相关库的安装  67 
    1.9.1 Docker的安装  67 
    1.9.2 Scrapyd的安装  71 
    1.9.3 Scrapyd-Client的安装  74 
    1.9.4 Scrapyd API的安装  75 
    1.9.5 Scrapyrt的安装  75 
    1.9.6 Gerapy的安装  76 
    第2章 爬虫基础  77 
    2.1 HTTP基本原理  77 
    2.1.1 URI和URL  77 
    2.1.2 超文本  78 
    2.1.3 HTTP和HTTPS  78 
    2.1.4 HTTP请求过程  80 
    2.1.5 请求  82 
    2.1.6 响应  84 
    2.2 网页基础  87 
    2.2.1 网页的组成  87 
    2.2.2 网页的结构  88 
    2.2.3 节点树及节点间的关系  90 
    2.2.4 选择器  91 
    2.3 爬虫的基本原理  93 
    2.3.1 爬虫概述  93 
    2.3.2 能抓怎样的数据  94 
    2.3.3 JavaScript渲染页面  94 
    2.4 会话和Cookies  95 
    2.4.1 静态网页和动态网页  95 
    2.4.2 无状态HTTP  96 
    2.4.3 常见误区  98 
    2.5 代理的基本原理  99 
    2.5.1 基本原理  99 
    2.5.2 代理的作用  99 
    2.5.3 爬虫代理  100 
    2.5.4 代理分类  100 
    2.5.5 常见代理设置  101 
    第3章 基本库的使用  102 
    3.1 使用urllib  102 
    3.1.1 发送请求  102 
    3.1.2 处理异常  112 
    3.1.3 解析链接  114 
    3.1.4 分析Robots协议  119 
    3.2 使用requests  122 
    3.2.1 基本用法  122 
    3.2.2 高级用法  130 
    3.3 正则表达式  139 
    3.4 抓取猫眼电影排行  150 
    第4章 解析库的使用  158 
    4.1 使用XPath  158 
    4.2 使用Beautiful Soup  168 
    4.3 使用pyquery  184 
    第5章 数据存储  197 
    5.1 文件存储  197 
    5.1.1 TXT文本存储  197 
    5.1.2 JSON文件存储  199 
    5.1.3 CSV文件存储  203 
    5.2 关系型数据库存储  207 
    5.2.1 MySQL的存储  207 
    5.3 非关系型数据库存储  213 
    5.3.1 MongoDB存储  214 
    5.3.2 Redis存储  221 
    第6章 Ajax数据爬取  232 
    6.1 什么是Ajax  232 
    6.2 Ajax分析方法  234 
    6.3 Ajax结果提取  238 
    6.4 分析Ajax爬取今日头条街拍美图  242 
    第7章 动态渲染页面爬取  249 
    7.1 Selenium的使用  249 
    7.2 Splash的使用  262 
    7.3 Splash负载均衡配置  286 
    7.4 使用Selenium爬取淘宝商品  289 
    第8章 验证码的识别  298 
    8.1 图形验证码的识别  298 
    8.2 极验滑动验证码的识别  301 
    8.3 点触验证码的识别  311 
    8.4 微博宫格验证码的识别  318 
    第9章 代理的使用  326 
    9.1 代理的设置  326 
    9.2 代理池的维护  333 
    9.3 付费代理的使用  347 
    9.4 ADSL拨号代理  351 
    9.5 使用代理爬取微信公众号文章  364 
    第10章 模拟登录  379 
    10.1 模拟登录并爬取GitHub  379 
    10.2 Cookies池的搭建  385 
    第11章 App的爬取  398 
    11.1 Charles的使用  398 
    11.2 mitmproxy的使用  405 
    11.3 mitmdump爬取“得到”App电子书 
    信息  417 
    11.4 Appium的基本使用  423 
    11.5 Appium爬取微信朋友圈  433 
    11.6 Appium+mitmdump爬取京东商品  437 
    第12章 pyspider框架的使用  443 
    12.1 pyspider框架介绍  443 
    12.2 pyspider的基本使用  445 
    12.3 pyspider用法详解  459 
    第13章 Scrapy框架的使用  468 
    13.1 Scrapy框架介绍  468 
    13.2 Scrapy入门  470 
    13.3 Selector的用法  480 
    13.4 Spider的用法  486 
    13.5 Downloader Middleware的用法  487 
    13.6 Spider Middleware的用法  494 
    13.7 Item Pipeline的用法  496 
    13.8 Scrapy对接Selenium  506 
    13.9 Scrapy对接Splash  511 
    13.10 Scrapy通用爬虫  516 
    13.11 Scrapyrt的使用  533 
    13.12 Scrapy对接Docker  536 
    13.13 Scrapy爬取新浪微博  541 
    第14章 分布式爬虫  555 
    14.1 分布式爬虫原理  555 
    14.2 Scrapy-Redis源码解析  558 
    14.3 Scrapy分布式实现  564 
    14.4 Bloom Filter的对接  569 
    第15章 分布式爬虫的部署  577 
    15.1 Scrapyd分布式部署  577 
    15.2 Scrapyd-Client的使用  582 
    15.3 Scrapyd对接Docker  583 
    15.4 Scrapyd批量部署  586 
    15.5 Gerapy分布式管理  590 
      
查看详情
12
好书推荐 / 更多
Python 3网络爬虫开发实战
星空帝国 中国古代星宿揭秘
徐刚、王燕平 著
Python 3网络爬虫开发实战
南十字星共和国:俄国象征派小说选
[俄]费·索洛古勃;[俄]瓦·勃留索夫;[俄]安德列·别雷
Python 3网络爬虫开发实战
逃之夭夭
[德]马丁·瓦尔泽 著;黄燎宇 译
Python 3网络爬虫开发实战
巴黎评论·诗人访谈
美国《巴黎评论》编辑部、美国《巴黎评论》编辑部 编;明迪 译
Python 3网络爬虫开发实战
鼠小兵:黑斧
[美]大卫·彼得森 著;方堃 译
Python 3网络爬虫开发实战
成为我自己:欧文·亚隆回忆录
[美]欧文·D.亚隆(Irvin D. Yalom) 著
Python 3网络爬虫开发实战
九色鹿·从“异域”到“旧疆”:宋至清贵州西北部地区的制度、开发与认同
温春来 著
Python 3网络爬虫开发实战
米格尔在智利的地下行动
[哥伦比亚]加西亚.马尔克斯 著
Python 3网络爬虫开发实战
谈话录
王安忆;张新颖
Python 3网络爬虫开发实战
漫画电影史(图像小说版《认识电影》,迷影人士必读漫画)
[英]爱德华·罗斯 著
Python 3网络爬虫开发实战
所有的名字
[葡萄牙]若泽·萨拉马戈 著;王渊 译
Python 3网络爬虫开发实战
皮肤的秘密:关于皮肤的17堂课!解读关于人体最大器官的一切!
刘立 译;[德]卡提雅•史匹哲(Katja Spitzer) 绘;[德]耶尔•阿德勒(Yael Adler)