Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装
Posted 挣扎的蓝藻
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装相关的知识,希望对你有一定的参考价值。
新版的 python 把 urllib2 改成了 urllib.request,所以直接导入 urllib2 会报错。
这是我通过 chrome92 版本的浏览器发送请求的时候抓到的头部信息,只要我在发送请求时引用一个 User-Agent 信息就可以了。
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/92.0.4515.131 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
访问的是 淘宝的 python 安装包镜像。
没有伪装浏览器,在访问一定次数后就访问不了了,伪装后就没有限制了。
import urllib.request as urllib2
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36'
}
url = "http://npm.taobao.org/mirrors/python/"
request = urllib2.Request(url, headers=headers)
html_content = urllib2.urlopen(request).readlines()
for i in html_content:
i = str(i)
if("href=" in i and ">" in i):
a = i.index("href=");
b = i.index(">");
i = i[a+6:b-1]
print(i)
爬取所有的 a 元素,并提取 href 里面的内容。
效果图如下:
喜欢的点个赞❤吧!
以上是关于Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装的主要内容,如果未能解决你的问题,请参考以下文章
Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装