前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装

Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装

作者头像
小蓝枣
发布2021-12-01 14:35:25
6770
发布2021-12-01 14:35:25
举报
文章被收录于专栏:CSDN博客专家-小蓝枣的博客

新版的 pythonurllib2 改成了 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 安装包镜像。 没有伪装浏览器,在访问一定次数后就访问不了了,伪装后就没有限制了。

代码语言:javascript
复制
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 里面的内容。

在这里插入图片描述
在这里插入图片描述

效果图如下:

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/08/06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档