这三节课内容侧重于对网页上的数据进行分析,根据分析结果,构造爬取的 url 和爬取后的信息提取方式。由于网站更新,这三节课中部分代码已经失效,因此只给出说明和注意事项。具体爬取代码可参考之前笔记。
招聘信息爬取
主要是爬取到的信息的解码:
response = requests.get("https://search.51job.com/list/030200,000000,0000,00,9,99,python,2,0.html")
data = bytes(response.text, response.encoding).decode("gbk", "ignore")
由于网站原因,课程中代码已不再适用,可参考 《阿里云爬虫项目课程笔记【4】:Requests 模块 与 云栖社区博文爬虫实战》
淘宝网商品信息爬虫实战
主要是对于动态加载的内容,如评论数,需要抓包分析,找到评论数所在的文件,通过请求该文件 url 获得相关信息。
由于网站原因,课程中代码已不再适用,可参考 《阿里云爬虫项目课程笔记【2】:Urllib模块 与 糗事百科爬取实战》
知乎爬虫实战(含登录)
分析 js 得到加密方式,根据网页的加密方式对数据进行加密后发起请求
保存 cookie
import urlli
import http.cookiejar
cjar = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cjar))
urllib.request.install_opener(opener)
之后的请求就能带着 cookie 进行请求
其他小节笔记
阿里云爬虫项目课程笔记【1】:正则表达式 与 XPath表达式
阿里云爬虫项目课程笔记【2】:Urllib模块 与 糗事百科爬取实战
阿里云爬虫项目课程笔记【3】:腾讯视频评论实战
阿里云爬虫项目课程笔记【4】:Requests 模块 与 云栖社区博文爬虫实战
阿里云爬虫项目课程笔记【5】:Scrapy 模块 与 当当爬虫实战
阿里云爬虫项目课程笔记【9 & 10】常见的反爬策略与反爬攻克手段、腾讯漫画爬取实战 与 分布式爬虫