ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

头歌实践教学平台:数据科学与大数据技术导论(二十一4)

头歌实践教学平台:数据科学与大数据技术导论(二十一4) 二十一、数据采集实战第4关爬取与反爬取进阶任务描述本关任务使用随机请求头爬取 baike.baidu.com/text/ 前两页的段子内容并保存在 ./step4/content.txt 中。相关知识在反爬机制中许多网站会通过 ip 以及请求头来限制你的访问在不影响网站正常运作的情况下我们可以使用 ip 代理池以及随机请求头来伪装自己的爬虫其中需要用到的就是 python 的 random 模块。下面是对爬取与反爬取进阶的视频介绍任务描述本关任务使用随机请求头爬取 baike.baidu.com/text/ 前两页的段子内容并保存在 ./step4/content.txt 中。相关知识在反爬机制中许多网站会通过 ip 以及请求头来限制你的访问在不影响网站正常运作的情况下我们可以使用 ip 代理池以及随机请求头来伪装自己的爬虫其中需要用到的就是 python 的 random 模块。下面是对爬取与反爬取进阶的视频介绍任务描述本关任务使用随机请求头爬取 baike.baidu.com/text/ 前两页的段子内容并保存在 ./step4/content.txt 中。相关知识在反爬机制中许多网站会通过 ip 以及请求头来限制你的访问在不影响网站正常运作的情况下我们可以使用 ip 代理池以及随机请求头来伪装自己的爬虫其中需要用到的就是 python 的 random 模块。下面是对爬取与反爬取进阶的视频介绍课程视频《爬取与反爬取进阶》编程要求请仔细阅读右侧代码结合相关知识在 Begin-End 区域内进行代码补充使用随机请求头爬取 baike.baidu.com/text/ 前两页的内容并保存在 ./step4/content.txt 中。测试说明平台会对你编写的代码进行测试预期输出第1页采集成功第2页采集成功内容保存成功开始你的任务吧祝你成功课程视频《爬取与反爬取进阶》编程要求请仔细阅读右侧代码结合相关知识在 Begin-End 区域内进行代码补充使用随机请求头爬取 baike.baidu.com/text/ 前两页的内容并保存在 ./step4/content.txt 中。测试说明平台会对你编写的代码进行测试预期输出第1页采集成功第2页采集成功内容保存成功开始你的任务吧祝你成功课程视频《爬取与反爬取进阶》编程要求请仔细阅读右侧代码结合相关知识在 Begin-End 区域内进行代码补充使用随机请求头爬取 baike.baidu.com/text/ 前两页的内容并保存在 ./step4/content.txt 中。测试说明平台会对你编写的代码进行测试预期输出第1页采集成功第2页采集成功内容保存成功开始你的任务吧祝你成功import urllib.requestimport reimport random#请求头uapools[Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393,Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.22 Safari/537.36 SE 2.X MetaSr 1.0,Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0),]def UA():#********** Begin **********## 使用随机请求头ua random.choice(uapools)headers {User‑Agent: ua}return headers#********** End **********#def main(page): # page为页号int类型#********** Begin **********#url fhttps://baike.baidu.com/text/{page}headers UA()req urllib.request.Request(url, headersheaders)resp urllib.request.urlopen(req)html resp.read().decode(utf‑8)print(f第{page}页采集成功)return html#********** End **********## 下面是平台内部调用逻辑不需要写在答题区if __name__ __main__:all_text for p in [1,2]:all_text main(p)with open(./step4/content.txt,w,encodingutf‑8) as f:f.write(all_text)print(内容保存成功)有任何问题都可以随时关注私信
返回列表