二、用户代理(伪装)
1. 代码
def askURL(url):
head = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"}
request = urllib.request.Request(url, headers=head)
html = ""
try:
response = urllib.request.urlopen(request)
html = response.read().decode("utf-8")
except urllib.error.URLError as e:
if hasattr(e, "code"):
print(e.code)
if hasattr(e, "reason"):
print(e.reason)
return html
2. 查看网页源代码,获取头部信息
- 打开某一网页,按 F12 或者 fn+F12(如果网页有保护机制,可以打开浏览器的开发者工具),点开Network板块,左上角的红点是下方进程显示的开关。

- 刷新网页,点击红点暂停。

- 选择最开始的进程。

- 单机那个name,右侧会出现详细信息,查看Headers,可以选择复制需要伪装的头部信息,本例用的是Request Headers中的User-Agent,也可以用更多的信息。

3. 对于懒得伪装或者爬下的代码有误的情况
- 直接打开想要爬取的网页,直接查看源代码,复制到 txt 本文文件中,在代码中直接赋值使用。
- 代码如下:(注意打开文件的位置,这里是和代码放在同一目录下)
f = open('data.txt', encoding='utf-8')
urls = f.read()