伪装浏览器的爬虫

伪装浏览器的爬虫代码
这里主要爬取的还是百度的页面,所用的软件是sublime Text,需要的·朋友可以去官网上自行下载

import urllib.request  #引用库  <-->  from urllib import request
import re
import random
url = r"http://www.baidu.com/"

#浏览器名称--->   User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.62

#写一个字典,构造请求头信息
#header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.62"}

#添加多个请求头伪装(agent3是手机端百度,其余的是电脑端)(手机端是“百度一下”电脑端显示为“百度一下,你就知道”)
agent1="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.62"
agent2="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"
agent3="Mozilla/5.0 (Linux; Android 7.1.1; OPPO R11st Build/NMF26X; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/63.0.3239.83 Mobile Safari/537.36 T7/11.15 baiduboxapp/11.15.5.10 (Baidu; P1 7.1.1)"
agent4="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SE 2.X MetaSr 1.0; SE 2.X MetaSr 1.0; .NET CLR 2.0.50727; SE 2.X MetaSr 1.0)"

#将这四个agent装到一个列表里面

list1=[agent1,agent2,agent3,agent4]

agent=random.choice(list1)
#构造请求头信息
header={"User-Agent":agent}

#创建自定义对象,为了对抗反爬虫机制
#反爬虫机制:判断用户是否是浏览器访问
#可以通过伪装浏览器进行访问
req=urllib.request.Request(url,headers=header)
#request自动创建的请求对象
reponse = urllib.request.urlopen(req).read().decode() #解码---  (编码encode())
pat=r"<title>(.*?)</title>"  #通过正则表达式,进行清洗
data=re.findall(pat,reponse)
print(data[0])

User-Agent的获取方法
在这里插入图片描述
注意:

  1. 在点击“网络”或“network”后找不到的话,可以点击“ctrl+R”重新刷新试试;
  2. 再出现如图片所示内容以后,不一定非要需要我用红线标出的那一部分,随便点击“名称”中的任意一个就可以。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值