Python网络爬虫从入门到实践

0
(0)

Python网络爬虫从入门到实践

出版社:机械工业出版社

出版年:2019-6

页数:279

定价:69.00元

装帧:平装

ISBN:9787111626879

内容简介
······

使用Python编写网络爬虫程序获取互联网上的大数据是当前的热门专题。本书内容包括三部分:基础部分、进阶部分和项目实践。基础部分(第1-7章)主要介绍爬虫的三个步骤-获取网页、解析网页和存储数据,并通过诸多示例的讲解,让读者能够从基础内容开始系统性地学习爬虫技术,并在实践中提升Python爬虫水平。进阶部分(第8-13章)包括多线程的并发和并行爬虫、分布式爬虫、更换IP等,帮助读者进一步提升爬虫水平。项目实践部分(第14-17章)使用本书介绍的爬虫技术对几个真实的网站进行抓取,让读者能在读完本书后根据自己的需求写出爬虫程序。

作者简介
······

唐松,康奈尔大学信息科学研究生,高考获全额奖学金就读于香港中文大学计量营销和金融学,毕业后与IBM合作A100项目,为美的、中信等公司实践大数据落地项目,热衷将数据科学与商业结合应用。

目录
······

前言

第1章 网络爬虫入门

1.1 为什么要学网络爬虫

1.1.1 网络爬虫能带来什么好处

1.1.2 能从网络上爬取什么数据

1.1.3 应不应该学爬虫

1.2 网络爬虫是否合法

1.2.1 Robots协议

1.2.2 网络爬虫的约束

1.3 网络爬虫的基本议题

1.3.1 Python爬虫的流程

1.3.2 三个流程的技术实现

第2章 编写第一个网络爬虫

2.1 搭建Python平台

2.1.1 Python的安装

2.1.2 使用pip安装第三方库

2.1.3 使用编辑器Jupyter编程

2.1.4 使用编辑器Pycharm编程

2.2 Python使用入门

2.2.1 基本命令

2.2.2 数据类型

2.2.3 条件语句和循环语句

2.2.4 函数

2.2.5 面向对象编程

2.2.6 错误处理

2.3 编写第一个简单的爬虫

2.3.1 第一步:获取页面

2.3.2 第二步:提取需要的数据

2.3.3 第三步:存储数据

2.4 Python实践:基础巩固

2.4.1 Python基础试题

2.4.2 参考答案

2.4.3 自我实践题

第3章 静态网页抓取

3.1 安装Requests

3.2 获取响应内容

3.3 定制Requests

3.3.1 传递URL参数

3.3.2 定制请求头

3.3.3 发送POST请求

3.3.4 超时

3.4 Requests爬虫实践:TOP250电影数据

3.4.1 网站分析

3.4.2 项目实践

3.4.3 自我实践题

第4章 动态网页抓取

4.1 动态抓取的实例

4.2 解析真实地址抓取

4.3 通过Selenium模拟浏览器抓取

4.3.1 Selenium的安装与基本介绍

4.3.2 Selenium的实践案例

4.3.3 Selenium获取文章的所有评论

4.3.4 Selenium的高级操作

4.4 Selenium爬虫实践:深圳短租数据

4.4.1 网站分析

4.4.2 项目实践

4.4.3 自我实践题

第5章 解析网页

5.1 使用正则表达式解析网页

5.1.1 re.match方法

5.1.2 re.search方法

5.1.3 re.findall方法

5.2 使用BeautifulSoup解析网页

5.2.1 BeautifulSoup的安装

5.2.2 使用BeautifulSoup获取博客标题

5.2.3 BeautifulSoup的其他功能

5.3 使用lxml解析网页

5.3.1 lxml的安装

5.3.2 使用lxml获取博客标题

5.3.3 XPath的选取方法

5.4 总结

5.5 BeautifulSoup爬虫实践:房屋价格数据

5.5.1 网站分析

5.5.2 项目实践

5.5.3 自我实践题

第6章 数据存储

6.1 基本存储:存储至TXT或CSV

6.1.1 把数据存储至TXT

6.1.2 把数据存储至CSV

6.2 存储至MySQL数据库

6.2.1 下载安装MySQL

6.2.2 MySQL的基本操作

6.2.3 Python操作MySQL数据库

6.3 存储至MongoDB数据库

6.3.1 下载安装MongoDB

6.3.2 MongoDB的基本概念

6.3.3 Python操作MongoDB数据库

6.3.4 RoboMongo的安装与使用

6.4 总结

6.5 MongoDB爬虫实践:虎扑论坛

6.5.1 网站分析

6.5.2 项目实践

6.5.3 自我实践题

第7章 Scrapy框架

7.1 Scrapy是什么

7.1.1 Scrapy架构

7.1.2 Scrapy数据流(Data Flow)

7.1.3 选择Scrapy还是Requests+bs4

7.2 安装Scrapy

7.3 通过Scrapy抓取博客

7.3.1 创建一个Scrapy项目

7.3.2 获取博客网页并保存

7.3.3 提取博客标题和链接数据

7.3.4 存储博客标题和链接数据

7.3.5 获取文章内容

7.3.6 Scrapy的设置文件

7.4 Scrapy爬虫实践:财经新闻数据

7.4.1 网站分析

7.4.2 项目实践

7.4.3 自我实践题

第8章 提升爬虫的速度

8.1 并发和并行,同步和异步

8.1.1 并发和并行

8.1.2 同步和异步

8.2 多线程爬虫

8.2.1 简单的单线程爬虫

8.2.2 学习Python多线程

8.2.3 简单的多线程爬虫

8.2.4 使用Queue的多线程爬虫

8.3 多进程爬虫

8.3.1 使用multiprocessing的多进程爬虫

8.3.2 使用Pool+Queue的多进程爬虫

8.4 多协程爬虫

8.5 总结

第9章 反爬虫问题

9.1 为什么会被反爬虫

9.2 反爬虫的方式有哪些

9.2.1 不返回网页

9.2.2 返回非目标网页

9.2.3 获取数据变难

9.3 如何“反反爬虫”

9.3.1 修改请求头

9.3.2 修改爬虫的间隔时间

9.3.3 使用代理

9.3.4 更换IP地址

9.3.5 登录获取数据

9.4 总结

第10章 解决中文乱码

10.1 什么是字符编码

10.2 Python的字符编码

10.3 解决中文编码问题

10.3.1 问题1:获取网站的中文显示乱码

10.3.2 问题2:非法字符抛出异常

10.3.3 问题3:网页使用gzip压缩

10.3.4 问题4:读写文件的中文乱码

10.4 总结

第11章 登录与验证码处理

11.1 处理登录表单

11.1.1 处理登录表单

11.1.2 处理cookies,让网页记住你的登录

11.1.3 完整的登录代码

11.2 验证码的处理

11.2.1 如何使用验证码验证

11.2.2 人工方法处理验证码

11.2.3 OCR处理验证码

11.3 总结

第12章 服务器采集

12.1 为什么使用服务器采集

12.1.1 大规模爬虫的需要

12.1.2 防止IP地址被封杀

12.2 使用动态IP拨号服务器

12.2.1 购买拨号服务器

12.2.2 登录服务器

12.2.3 使用Python更换IP

12.2.4 结合爬虫和更换IP功能

12.3 使用Tor代理服务器

12.3.1 Tor的安装

12.3.2 Tor的使用

第13章 分布式爬虫

13.1 安装Redis

13.2 修改Redis配置

13.2.1 修改Redis密码

13.2.2 让Redis服务器被远程访问

13.2.3 使用Redis Desktop Manager管理

13.3 Redis分布式爬虫实践

13.3.1 安装Redis库

13.3.2 加入任务队列

13.3.3 读取任务队列并下载图片

13.3.4 分布式爬虫代码

13.4 总结

第14章 爬虫实践一:维基百科

14.1 项目描述

14.1.1 项目目标

14.1.2 项目描述

14.1.3 深度优先和广度优先

14.2 网站分析

14.3 项目实施:深度优先的递归爬虫

14.4 项目进阶:广度优先的多线程爬虫

14.5 总结

第15章 爬虫实践二:知乎Live

15.1 项目描述

15.2 网站分析

15.3 项目实施

15.3.1 获取所有Live

15.3.2 获取Live的听众

15.4 总结

第16章 爬虫实践三:百度地图API

16.1 项目描述

16.2 获取API秘钥

16.3 项目实施

16.3.1 获取所有拥有公园的城市

16.3.2 获取所有城市的公园数据

16.3.3 获取所有公园的详细信息

16.4 总结

第17章 爬虫实践四:畅销书籍

17.1 项目描述

17.2 网站分析

17.3 项目实施

17.3.1 获取亚马逊的图书销售榜列表

17.3.2 获取所有分类的销售榜

17.3.3 获取图书的评论

17.4 总结

评论 ······

讲得不够细

过一遍就好了,没什么新东西,收获不大!

作为教材应该严谨和稳定,这本书讲的案例网站都已经打不开了,所以大家就别看了吧浪费时间

由浅入深,挺容易看懂的,但是大部分的案例的实战型不够强,一方面是资源目标资源失效,一方面是案例代码呈现度不高。不过仍然算是基本入门了,也能够自己动手找一些网站来实战爬取数据,蛮不错的。

点击星号评分!

平均分 0 / 5. 投票数: 0

还没有投票!请为他投一票。

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册