# 前言
python 作为最 nb 的语言(不接受任何反驳 hhh),基本上可以解决所有问题。而爬虫作为信息检索强有力的工具,是生活工作的好帮手。因此,开一篇文章来介绍如何用 python 写爬虫脚本是很有必要的。也方便之后套模板用。
注意,学习爬虫最好的方式是任务驱动,即面向需求的学习。这样效率高、能解决实际中的 bug。
# 模板
这里直接放一个全文总结的模板供参考使用,各部分细节之后一一说明。
import requests | |
target_url = 'https://c01dkit.com/' | |
res = requests.get(target_url, | |
headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'} ) |
# 使用 GET 获取网页信息
import requests | |
target_url = 'https://c01dkit.com/' | |
res = requests.get(target_url) |
# 使用 session 保持登录信息
有时需要的不仅仅是一次简单的交互,需要先进行登录然后进行多次交互。可以通过维持一个会话的方式来进行。
# 反爬手段
有些网站可能会禁止 bot 爬取,可以考虑加上 header。
import requests | |
target_url = 'https://c01dkit.com/' | |
headers = {} | |
headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36' # 伪装成浏览器 | |
headers['Referer'] = base_url # 对于检查是否由自己网站跳转而来的网页,可以加 referer。base_url 表示目标网站的 index | |
headers['X-Forwarded-For'] = 'ip' # 伪造 IP | |
res = requests.get(target_url, headers = headers) |
# 多线程爬虫
# Scrapy 爬虫框架
# 参考资料
- 如何入门 Python 爬虫?—— 知乎