Python爬虫从入门到自己玩转

来自锐亚教育知识库
跳到导航 跳到搜索

目录

第零章 导学

0.1 爬虫是什么鬼?它能做什么?

0.2 本课程将怎么教会你自己写爬虫程序

第一章 准备开发环境

1.1 Python语言介绍

1.2 安装Python(Windows)

1.3 安装Python(Mac)

1.4 安装开发IDE—PyCharm(Windows)

1.5 安装开发IDE—PyCharm(Mac)

1.6 安装数据库MySQL(Windows)

1.7 安装数据库MySQL(Mac)

1.8 安装数据库远程控制工具SQLYog(Windows)

1.9 安装数据库远程控制工具SQLYog(Mac)

1.10 Python虚拟环境Virtualenv是什么鬼?

1.11 安装Virtualenv(Windows)

1.12 安装Virtualenv(Mac)

第二章 储备必要的基础知识(网络篇)

2.1 我们每天使用的网络是如何工作的?

2.2 IP:网络成员的收货地址

2.3 DNS:网络域名与IP地址映射关系的管理员

2.4 路由:网络数据的中转站

2.5 协议:网络成员间的沟通语言

2.6 HTTP协议:浏览器能正常显示网页信息都是它的功劳

2.7 TCP/IP协议:HTTP协议的地基

2.8 用Python实现一个简单的Web Server

2.9 用Python实现Socket编程-服务端

2.10 用Python实现Socket编程-客户端

2.11 定义一个我们自己的协议

第三章 储备必要的基础知识(前端篇)

3.1 什么是HTML?

3.2 什么是CSS?

3.3 什么是JavaScript?

3.4 手写一个HTML页面

3.5 浏览器F12查看自己写的HTML

3.6 什么是DOM树?

3.7 人们常说的静态网页和动态网页有什么区别?

3.8 请求服务端接口时的Get 和 Post方法有什么区别?

3.9 什么是同步请求?什么是异步请求?

3.10 如何用Ajax实现异步请求?

3.11 什么是json数据格式?

3.12 Http请求中常见的Header内容有哪些?

3.13 什么是XPATH?

3.14 什么是CSS选择器?

第四章 Python爬虫时常用的基础类库

4.1 request:处理http请求

4.2 re:正则表达式

4.3 pymysql:使用SQL语句操作数据库

4.4 peewee:ORM方式操作数据库

4.5 beautifulsoup(BS4):HTML解析器

4.6 lxml:xpath方式解析HTML

4.7 css选择器方式解析HTML

4.8 urllib.parse:解析和封装URL

4.9 pickle:将python对象写入本地磁盘文件

第五章 实战:简单获取XX网新闻列表

5.1 需求分析:爬取哪些内容,如何设计爬取流程

5.2 数据库设计:设计新闻列表的表结构

5.3 页面分析:找到数据的css选择器和xpath

5.4 爬取数据并入库

5.5 增加数据是否重复爬取的校验逻辑

5.6 总结:爬虫其实就是如此的简单

第六章 多线程编程提高爬虫速度

6.1 什么是多线程?

6.2 threading库:启动线程

6.3 线程同步:线程Lock

6.4 什么是线程池?

6.5 concurrent.futures库:操纵线程池

6.7 对比单线程、多线程、线程池的执行时间

6.8 需求分析:爬取新闻详情页内容

6.9 数据库设计:新闻详情页表结构

6.10 页面分析:找到数据的css选择器和xpath

6.11 使用线程池爬取数据并入库

第七章 模拟登录并解决验证码的输入问题

7.1 模拟登录前必须了解什么是cookie和session

7.2 模拟登录XX网,将登录成功的cookie保存在本地

7.3 读取本地cookie,用已登录状态访问网站

7.4 selenium:Web应用测试工具

7.5 使用selenium模拟登录

7.6 模拟滑动验证码的实现原理

7.7 使用selenium实现模拟滑动验证码

7.8 使用第三方验证码服务商实现输入文字类验证码

第八章 实战:爬取XX网站数据并入库

8.1 需求分析:爬取哪些数据?哪些页面要登录后才能爬取?

8.2 流程设计:设计各页面的爬取顺序和流程

8.3 数据库设计

8.4 分析和爬取首页数据

8.5 分析和爬取模块列表并入库

8.6 分析和爬取数据列表并入库

8.7 分析和爬取数据详情信息并入库

第九章 实战:清洗入库数据并发送到邮箱或Kindle

9.1 什么是数据分析和数据清洗?

9.2 从爬取数据中清洗出我们需要的数据

9.3 smtplib库:使用python发送email

9.4 将清洗后的数据整理保存为txt文件

9.5 将txt文件通过email发送到亚马逊邮箱

9.6 在kindle客户端中查看爬取到的数据

9.7 通过微信绑定腾讯邮箱,实现微信实时接收爬虫通知

第十章 如何应对网站的反爬虫机制

10.1 什么是反爬虫机制?为什么要设立反爬虫机制?

10.2 了解反爬虫机制后,我们该如何应对反爬虫?

10.3 user-agent是什么?

10.4 fake_useragent库:随机模拟user-agent

10.5 如何利用第三方IP代理服务跳过网站的IP限制?

第十一章 使用Scrapy框架实现爬虫,提高开发效率

11.1 scrapy是什么?有什么用?

11.2 安装scrapy

11.3 创建第一个scrapy项目

11.4 实现一个简单的scrapy爬虫逻辑

11.5 改造XX网站的爬虫使用scrapy框架

第十二章 课程总结

12.1 如何将所学到的知识应用到其它网站?比如电商

12.2 爬虫还有哪些高级应用?

12.3 除了爬取数据,我们还能用已学到的知识做哪些事情?