首页 > 其他分享 >使用fake-useragent库伪装请求头

使用fake-useragent库伪装请求头

时间:2024-09-15 17:04:35浏览次数:10  
标签:like Gecko fake 伪装 print useragent ua

部分网站做了反爬虫机制,不允许程序访问网站的数据,而使用同一个useragent(用户代理)短时间爬取大量数据也可能被网站反爬虫程序识别。为了更好地模拟浏览器地工作,可以使用第三方库fake-useragent生成假的useragent字符串伪装浏览器,从而绕过一些网站的反爬虫措施。

首先在命令行中输入pip install fake-useragent安装fake-useragent

可以继续在命令行中输入pip show fake-useragent查看fake-useragent库的相关信息,结果如下(可以包的主页Home-Page查看详细信息):

Name: fake-useragent
Version: 1.5.1
Summary: Up-to-date simple useragent faker with real world database
Home-page: https://github.com/fake-useragent/fake-useragent
Author:
Author-email: Melroy van den Berg <[email protected]>, Victor Kovtun <[email protected]>
License:
Location: C:\Users\89660\AppData\Local\Programs\Python\Python312\Lib\site-packages
Requires:
Required-by:

运行代码:

from fake_useragent import UserAgent
# 创建UserAgent实例
ua = UserAgent()
# 打印随机的UserAgent字符串,可选择不同的浏览器
print(ua.chrome)
print(ua.chrome)
print(ua.edge)
print(ua.firefox)
print(ua.safari)
print(ua.safari)

运行结果:

Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Mobile Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
Mozilla/5.0 (iPhone; CPU iPhone OS 17_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) EdgiOS/121.0.2277.107 Version/17.0 Mobile/15E148 Safari/604.1
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0 Config/92.2.7601.2
Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1
Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1

使用httpbin工具检测:

from urllib.request import Request, urlopen
from fake_useragent import UserAgent
# 测试工具url地址
url = 'http://httpbin.org/get'
# 创建UserAgent实例
ua = UserAgent()
# 伪装请求头
headers = {'user-agent': ua.chrome}
# 封装Request对象
req = Request(url, headers=headers)
# 发送请求
resp = urlopen(req)
# 读取响应内容
print(resp.read().decode())
运行结果(生成的user-agent字符串是随机的)
 {
  "args": {}, 
  "headers": {
    "Accept-Encoding": "identity", 
    "Host": "httpbin.org", 
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36", 
    "X-Amzn-Trace-Id": "Root=1-66e6a19f-67824bec2bdcca50710aed6a"
  }, 
  "origin": "111.8.72.145", 
  "url": "http://httpbin.org/get"
}

标签:like,Gecko,fake,伪装,print,useragent,ua
From: https://www.cnblogs.com/qyly/p/18415401

相关文章

  • AI换脸深度伪造技术的全新Deepfakes解决方案:Roop-Unleashed,一键整合包教程
    无需训练即可使用未经审查的图像和视频Deepfakes,并且具有易于使用的GUI。     Stars情况如下:  随着科技的发展,图像和视频编辑工具层出不穷。Roop-Unleashed作为一款先进的开源软件,专注于图像和视频的面部替换,通过其无训练要求的设计和易用的用户界面,......
  • CamoTeacher:玩转半监督伪装物体检测,双一致性动态调整样本权重 | ECCV 2024
    论文提出了第一个端到端的半监督伪装目标检测模型CamoTeacher。为了解决半监督伪装目标检测中伪标签中存在的大量噪声问题,包括局部噪声和全局噪声,引入了一种名为双旋转一致性学习(DRCL)的新方法,包括像素级一致性学习(PCL)和实例级一致性学习(ICL)。DRCL帮助模型缓解噪音问题,有效利用伪......
  • 从Deepfake事件透视:人工智能如何重塑安防监控的未来
    近年来,随着人工智能技术的飞速发展,特别是深度伪造(Deepfake)技术的出现,引发了社会各界的广泛关注与讨论。Deepfake技术通过深度学习算法,将个人的声音、面部表情及身体动作拼接合成虚假内容,其效果可以达到以假乱真的程度,被形象地称为“音视频领域的PS技术”。然而,这一技术在带来娱乐、......
  • 从Deepfake事件透视:人工智能如何重塑安防监控的未来
    近年来,随着人工智能技术的飞速发展,特别是深度伪造(Deepfake)技术的出现,引发了社会各界的广泛关注与讨论。Deepfake技术通过深度学习算法,将个人的声音、面部表情及身体动作拼接合成虚假内容,其效果可以达到以假乱真的程度,被形象地称为“音视频领域的PS技术”。然而,这一技术在带来娱乐......
  • 【Laravel 】faker数据填充详解
    【Laravel】faker数据填充详解 安装在laravel中已经自动集成,无需手动安装。如需在其他地方使用,可使用以下命令进行安装。composerrequirefzaninotto/faker为Faker指定中文支持可通过在 config/app.php 增加如下配置使其支持中文:'faker_locale'=>'zh_CN',基......
  • [网鼎杯 2018]Fakebook
    [网鼎杯2018]FakebookStep注册用户进入发现查看用户详情:/view.php?no=1尝试修改为2发现报错,可能是文件包含或者SQL注入于是尝试改成:/view.php?no=2'回显:[*]queryerror!(YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMariaDB......
  • 有什么方法可以将模拟对象伪装成 Qt 方法参数中可接受的 PyQt 对象吗?
    这是MRE。您需要pytest安装...事实上pytest-qt不会造成任何伤害。importsys,pytestfromPyQt5importQtWidgetsfromunittestimportmockclassMyLineEdit(QtWidgets.QLineEdit):def__init__(self,parent):super().__init__(paren......
  • Datawhale AI 夏令营:从零入门CV图像竞赛(Deepfake攻防)----Task 2
    Task2:从baseline入门深度学习原任务地址:https://datawhaler.feishu.cn/wiki/CsS2weZvgigEKok6IzycdiVunuy任务目标是:开发一个基于深度学习的Deepfake检测模型。这个实践项目将涵盖从数据集准备、模型训练到性能评估的各个环节,全面展示如何利用深度学习技术检测Deepfake内容。......
  • Datawhale AI 夏令营——CV图像竞赛(Deepfake攻防)——Task3学习笔记
        这一篇是在数据增强的方向上发力,尝试提升模型的表现。        数据增强的目的是通过人工方式增加训练数据的多样性,从而提高模型的泛化能力,使其能够在未见过的数据上表现得更好。对于图像而言,数据增强包括例如视角、光照、遮挡等情况,使得模型能够学习到......
  • Datawhale AI 夏令营 全球Deepfake攻防挑战赛
                    近日有学习多模态技术的需求,碰巧撞上Datawhale的夏令营,初看要求颇高,既要打卡还要分享,心中顿起燥心,转念一想,其实不失为一次磨练机会,为提高自己逃课摆烂的成本,邃开始撰写自己第一篇公开的学习笔记,若多日后看见虎头蛇尾的学习笔记,想必羞愧难当。......