展开全部

主编推荐语

这本书告诉你,如何使用Python来编写网络爬虫程序。

内容简介

书中主要内容包括网络爬虫简介,从页面中抓取数据的3种方法,提取缓存中的数据,使用多个线程和进程进行并发抓取,抓取动态页面中的内容,与表单进行交互,处理页面中的验证码问题,以及使用Scarpy和Portia进行数据抓取,并在最后介绍了使用本书讲解的数据抓取技术对几个真实的网站进行抓取的实例,帮助你活学活用书中介绍的技术。

本书适合有一定Python编程经验而且对爬虫技术感兴趣的读者阅读。

目录

  • 版权信息
  • 内容提要
  • 关于作者
  • 关于审稿人
  • 前言
  • 本书内容
  • 阅读本书的前提
  • 本书读者
  • 资源与支持
  • 配套资源
  • 提交勘误
  • 与我们联系
  • 关于异步社区和异步图书
  • 第1章 网络爬虫简介
  • 1.1 网络爬虫何时有用
  • 1.2 网络爬虫是否合法
  • 1.3 Python 3
  • 1.4 背景调研
  • 1.4.1 检查robots.txt
  • 1.4.2 检查网站地图
  • 1.4.3 估算网站大小
  • 1.4.4 识别网站所用技术
  • 1.4.5 寻找网站所有者
  • 1.5 编写第一个网络爬虫
  • 1.5.1 抓取与爬取的对比
  • 1.5.2 下载网页
  • 1.重试下载
  • 2.设置用户代理
  • 1.5.3 网站地图爬虫
  • 1.5.4 ID遍历爬虫
  • 1.5.5 链接爬虫
  • 高级功能
  • 1.解析robots.txt
  • 2.支持代理
  • 3.下载限速
  • 4.避免爬虫陷阱
  • 5.最终版本
  • 1.5.6 使用requests库
  • 1.6 本章小结
  • 第2章 数据抓取
  • 2.1 分析网页
  • 2.2 3种网页抓取方法
  • 2.2.1 正则表达式
  • 2.2.2 Beautiful Soup
  • 2.2.3 Lxml
  • 2.3 CSS选择器和浏览器控制台
  • 2.4 XPath选择器
  • 2.5 LXML和家族树
  • 2.6 性能对比
  • 2.7 抓取结果
  • 2.7.1 抓取总结
  • 2.7.2 为链接爬虫添加抓取回调
  • 2.8 本章小结
  • 第3章 下载缓存
  • 3.1 何时使用缓存
  • 3.2 为链接爬虫添加缓存支持
  • 3.3 磁盘缓存
  • 3.3.1 实现磁盘缓存
  • 3.3.2 缓存测试
  • 3.3.3 节省磁盘空间
  • 3.3.4 清理过期数据
  • 3.3.5 磁盘缓存缺点
  • 3.4 键值对存储缓存
  • 3.4.1 键值对存储是什么
  • 3.4.2 安装Redis
  • 3.4.3 Redis概述
  • 3.4.4 Redis缓存实现
  • 3.4.5 压缩
  • 3.4.6 测试缓存
  • 3.4.7 探索requests-cache
  • 3.5 本章小结
  • 第4章 并发下载
  • 4.1 100万个网页
  • 4.1.1 解析Alexa列表
  • 4.2 串行爬虫
  • 4.3 多线程爬虫
  • 4.4 线程和进程如何工作
  • 4.4.1 实现多线程爬虫
  • 4.4.2 多进程爬虫
  • 4.5 性能
  • 4.5.1 Python多进程与GIL
  • 4.6 本章小结
  • 第5章 动态内容
  • 5.1 动态网页示例
  • 5.2 对动态网页进行逆向工程
  • 5.2.1 边界情况
  • 5.3 渲染动态网页
  • 5.3.1 PyQt还是PySide
  • 1.使用Qt进行调试
  • 5.3.2 执行JavaScript
  • 5.3.3 使用WebKit与网站交互
  • 1.等待结果
  • 5.4 渲染类
  • 5.4.1 Selenium
  • 1.Selenium与无界面浏览器
  • 5.5 本章小结
  • 第6章 表单交互
  • 6.1 登录表单
  • 6.1.1 从浏览器加载cookie
  • 6.2 支持内容更新的登录脚本扩展
  • 6.3 使用Selenium实现自动化表单处理
  • 6.3.1 网络抓取时的“人类化”方法
  • 6.4 本章小结
  • 第7章 验证码处理
  • 7.1 注册账号
  • 7.1.1 加载验证码图像
  • 7.2 光学字符识别
  • 7.2.1 进一步改善
  • 7.3 处理复杂验证码
  • 7.4 使用验证码处理服务
  • 7.4.1 9kw入门
  • 9kw验证码API
  • 7.4.2 报告错误
  • 7.4.3 与注册功能集成
  • 7.5 验证码与机器学习
  • 7.6 本章小结
  • 第8章 Scrapy
  • 8.1 安装Scrapy
  • 8.2 启动项目
  • 8.2.1 定义模型
  • 8.2.2 创建爬虫
  • 1.优化设置
  • 2.测试爬虫
  • 8.3 不同的爬虫类型
  • 8.4 使用shell命令抓取
  • 8.4.1 检查结果
  • 8.4.2 中断与恢复爬虫
  • Scrapy性能调优
  • 8.5 使用Portia编写可视化爬虫
  • 8.5.1 安装
  • 8.5.2 标注
  • 8.5.3 运行爬虫
  • 8.5.4 检查结果
  • 8.6 使用Scrapely实现自动化抓取
  • 8.7 本章小结
  • 第9章 综合应用
  • 9.1 Google搜索引擎
  • 9.2 Facebook
  • 9.2.1 网站
  • 9.2.2 Facebook API
  • 9.3 Gap
  • 9.4 宝马
  • 9.5 本章小结
展开全部

评分及书评

评分不足
2个评分
  • 用户头像
    给这本书评了
    5.0

    真是一本讲解爬虫的好书,从一开始的简单实现爬虫,用了三种不同的方法。并比对了优缺点,让你更清楚在什么情况下应该使用哪一种方法更合适。然后又讲解了爬虫的框架,特别是最后一个 scrapy,功能居然如此强大。虽然我还没有太多爬虫的需求,胆本书让我学到了很多爬虫的思路。

      转发
      评论

    出版方

    人民邮电出版社

    人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。