万本电子书0元读

万本电子书0元读

顶部广告

用Python写网络爬虫(第2版)电子书

畅销的Python网络爬虫发实战图书全新升级版,上一版年销量近40000册。 针对Python 3.6版本编写。 提供示例完整源码和实例网站搭建源码,确保用户能在本地成功复现爬取网站环境,并保障网站的稳定性与可靠性以及代码运行结果的可再现性。 Internet上包含了许多有用的数据,其中大部分是可以免费公访问的。但是,这些数据不容易使用,它们内嵌在网站的架构和样式中,在提取时也需要多加小心。网络爬取技术作为一种收集和理解网络上海量信息的方式,正变得越来越有用。

售       价:¥

纸质售价:¥36.40购买纸书

737人正在读 | 0人评论 6.5

作       者:(德)凯瑟琳 雅姆尔(Katharine Jarmul)、(澳)理查德 劳森(Richard Lawson)

出  版  社:人民邮电出版社

出版时间:2018-08-01

字       数:15.5万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
《用Python写网络爬虫(第 2版》讲解了如何使用Python来编写网络爬虫程序,内容包括网络爬虫简介,从页面中抓取数据的3种方法,提取缓存中的数据,使用多个线程和程行并发抓取,抓取动态页面中的内容,与表单行交互,处理页面中的验证码问题,以及使用Scarpy和Portia行数据抓取,并在*后介绍了使用本书讲解的数据抓取技术对几个真实的网站行抓取的实例,旨在帮助读者活学活用书中介绍的技术。 《用Python写网络爬虫(第 2版》适合有一定Python编程经验而且对爬虫技术感兴趣的读者阅读。<br/>【推荐语】<br/>畅销的Python网络爬虫发实战图书全新升级版,上一版年销量近40000册。 针对Python 3.6版本编写。 提供示例完整源码和实例网站搭建源码,确保用户能在本地成功复现爬取网站环境,并保障网站的稳定性与可靠性以及代码运行结果的可再现性。 Internet上包含了许多有用的数据,其中大部分是可以免费公访问的。但是,这些数据不容易使用,它们内嵌在网站的架构和样式中,在提取时也需要多加小心。网络爬取技术作为一种收集和理解网络上海量信息的方式,正变得越来越有用。 本书是使用Python 3.6的新特性来爬取网络数据的门指南。本书讲解了从静态网站提取数据的方法,以及如何使用数据库和文件缓存技术来节省时间并管理服务器负载,然后介绍了如何使用浏览器、爬虫和并发爬虫发一个更为复杂的爬虫。 借助于PyQt和Selenium,你可以决定何时以及如何从依赖JavaScript的网站上爬取数据,以及更好地理解在受CAPTCHA保护的复杂网站上提交表单的方法。本书还讲解了使用Python包(比如mechanize)行自动化处理的方法、使用Scrapy库创建基于类的爬虫的方法,以及如何在真实的网站上实施所学的爬虫技巧。 本书*后还涵盖了使用爬虫对网站行测试、远程爬取技术、图像处理以及其他相关的主题。 本书主要内容如下: 使用简单的Python程序从页面中提取数据; 构建并发爬虫,对页面行并行处理; 通过跟踪来爬取一个网站; 从HTML中提取特性; 缓存下载的HTML,以供复用; 比较并发模型,确定比较快的爬虫; 解析依赖于JavaScript的网站; 与表单和会话行交互。<br/>【作者】<br/>Katharine Jarmul是德国柏林的一位数据科学家和Python支持者。她经营了一家数据科学咨询公司——Kjamistan,为不同规模的企业提供诸如数据抽取、采集以及建模的服务。她从2008年始使用Python行编程,从2010年始使用Python抓取网站,并且在使用网络爬虫行数据分析和机器学习的不同规模的初创企业中工作过。读者可以通过Twitter(@kjam)关注她的想法以及动态。 Richard Lawson来自澳大利亚,毕业于墨尔本大学计算机科学专业。毕业后,他创办了一家专注于网络爬虫的公司,为超过50个国家的业务提供远程工作。他精通世界语,可以使用汉语和韩语对话,并且积极投身于源软件事业。他目前正在牛津大学攻读研究生学位,并利用业余时间研发自主无人机。 译者介绍 李斌,毕业于北京科技大学计算机科学与技术专业,获得硕士学位。曾任职于阿里巴巴,当前供职于凡普金科,负责应用安全工作。热爱Python编程和Web安全,希望以更加智能和自动化的方式提升网络安全。博客地址为pythoner.com。<br/>
目录展开

版权

版权声明

内容提要

关于作者

关于审稿人

前言

资源与支持

第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.5.3 网站地图爬虫

1.5.4 ID遍历爬虫

1.5.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

5.3.2 执行JavaScript

5.3.3 使用WebKit与网站交互

5.4 渲染类

5.4.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入门

7.4.2 报告错误

7.4.3 与注册功能集成

7.5 验证码与机器学习

7.6 本章小结

第8章 Scrapy

8.1 安装Scrapy

8.2 启动项目

8.2.1 定义模型

8.2.2 创建爬虫

8.3 不同的爬虫类型

8.4 使用shell命令抓取

8.4.1 检查结果

8.4.2 中断与恢复爬虫

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 本章小结

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部