python3_fake_User-Agent_创建UA伪装
UA格式:
User-Agent: Mozilla/<version> (<system-information>) <platform> (<platform-details>) <extensions>
create_UserAgent
随机创建一个UserAgent,避免大量爬取时服务器拒绝
导入
from create_UserAgent import random_UserAgent
使用方法
伪装成chrome浏览器
response = requests.get(url=url, headers=random_UserAgent())
伪装成Edge浏览器
response = requests.get(url=url, headers=random_UserAgent(edge=True))
返回的内容举例
直接返回一个字典
{'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}
{'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.60 Safari/537.36 Edg/103.0.1264.49'}
出现错误
如果请求出现错误,请自行修改第64行的 ‘User-Agent’: f’{user_agent}’ 为 ‘user-agent’: f’{user_agent}’ 后,再做尝试
63 header = {
64 'User-Agent': f'{user_agent}'
65 }
可能会持续更新 更新链接: https://github.com/GuoKeLiDeHuanXiang2022/create_UserAgent
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# @Author : GuoKeLiDeHuanXiang2022
# @Edition : python3.10
# @Software : PyCharm
# @Time : 2022/8/4 17:58
# @File : create_UserAgent.py
"""
随机产生一个User-Agent
UA格式:
User-Agent: Mozilla/<version> (<system-information>) <platform> (<platform-details>) <extensions>
"""from random import choice# 系统版本
system_information_list = ['(Windows NT 10.0; Win64; x64)','(Windows NT 6.3; Win64; x64)','(Windows NT 6.2; Win64; x64)','(Windows NT 6.1; Win64; x64)']# 浏览器内核版本
chrome_list = ['96.0.4664.93','96.0.4664.45','95.0.4638.69','95.0.4638.54','94.0.4606.81','94.0.4606.71','94.0.4606.61','94.0.4606.54','93.0.4577.82','93.0.4577.63','91.0.4472.77','88.0.4324.11','87.0.4280.63','87.0.4280.60','87.0.4280.47','86.0.4240.198','86.0.4240.193','86.0.4240.183','86.0.4240.111','86.0.4240.75','85.0.4183.121','85.0.4183.83','84.0.4147.135']edg_list = ['Edg/91.0.864.41','Edg/103.0.1264.49','Edg/104.0.1293.47']def random_UserAgent(edge=False): # 随机产生一个U-A 输出""":param edge: 默认:False True:伪装成edge浏览器 False:伪装成chrome浏览器:return: header: 请求头字典"""system_information = choice(system_information_list)chrome = choice(chrome_list)if not edge: # 不需要edge标 默认无edge标user_agent = 'Mozilla/5.0 ' \f'{system_information} ' \'AppleWebKit/537.36 ' \'(KHTML, like Gecko) ' \f'Chrome/{chrome} ' \'Safari/537.36'else: # 需要edge标edg = choice(edg_list)user_agent = 'Mozilla/5.0 ' \f'{system_information} ' \'AppleWebKit/537.36 ' \'(KHTML, like Gecko) ' \f'Chrome/{chrome} ' \'Safari/537.36 ' \f'{edg}'header = {'User-Agent': f'{user_agent}'}return headerif __name__ == '__main__':print(random_UserAgent())print(random_UserAgent(edge=True))
python3_fake_User-Agent_创建UA伪装相关推荐
- 一篇文章带你了解清楚什么是UA
最近在做一部分的UA的统计.正好做下记录.有需要的同学也可以借鉴一下 一.首先讲一下UA是什么 UA,全称为"User Agent",中文通常直译为"用户代理" ...
- opc协议 服务器,使用OPC UA协议在python中进行服务器端客户端编程
你想要完成什么?结构是相当重要的问题,因为你可以摆脱它. Onces它的安装运行的服务器并检查它witth他的命令行 opcua-client 这个GUI可能会帮助很多见的服务器的结构. opcua服 ...
- 爬虫-scrapy的中间件
scrapy的中间件 下载中间件 作用: 处于引擎和下载器之间,因此该中间件可以批量拦截整个工程中发起所有的请求和响应 拦截请求可进行的操作 进行代理IP request.meta['proxy'] ...
- Python爬虫之旅_ONE
前言: 最近学习了python的一些基础语法,又跟着廖雪峰老师用异步IO框架搭建了一个简易的网站(虽然有的现在还不懂)不过慢慢来,python还有一个好玩的地方是可以写爬虫,趁着现在有充裕的时间就来学 ...
- 22-爬虫之scrapy框架分布式09
分布式 实现分布式的方式:scrapy+redis(scrapy结合着scrapy-redis组件) 原生的scrapy框架是无法实现分布式的 什么是分布式 需要搭建一个分布式机群,然后让机群中的每一 ...
- 16-爬虫之scrapy框架手动请求发送实现全站数据爬取03
scrapy的手动请求发送实现全站数据爬取 yield scrapy.Reques(url,callback) 发起的get请求 callback指定解析函数用于解析数据 yield scrapy.F ...
- 15-爬虫之scrapy框架基于管道实现数据库备份02
基于管道实现数据备份 将爬取到的数据分别存储到不同的载体 将数据一份存储到本地一份存储到mysql和redis 一个管道类对应一种形式的持久化存储操作,如果将数据存储到不同得载体中就需要使用多个管道类 ...
- 14-爬虫之scrapy框架的基本使用01
scrapy框架 简介:Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的 ...
- Matrix工作室第六届纳新AI组考核题(B卷)
一.单选题 下面哪个是Python中的不变的数据结构(C) A.set B.list C.tuple D.dict Python标准的内置数据类型有: Number(整数型 int , 浮点数型 fl ...
- 这年头学爬虫还就得会点 scrapy 框架
Hello,我是 Alex 007,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了. 这几天一直在练车,只能在中间休息的时候写一写博客,可怜去年报的名到 ...
最新文章
- dma工作时cpu工不工作_CPU如何工作?
- 开源自己写的Library到github,让别人或自己的项目依赖
- 查询前几条记录SQL在不同数据库中的用法
- ffmpeg相关资源
- 精细化的风险管理,评分的应用策略之道
- 学习iptables
- ckeditor 部分保存按钮去除_怎样去除mp4视频中的水印呢
- win10安装nvidia驱动
- 调试工具之UDP/TCP网络调试助手NetAssist
- C++ Primer 中文版(第 5 版)练习解答合集
- pyecharts 插入到 ppt
- 朱晔的互联网架构实践心得S2E7:漫谈平台架构的工作(基础架构、基础服务、基础平台、基础中间件等等)
- 安全邮箱怎么注册?邮箱地址是什么?怎么写?快速了解tomvip邮箱
- Faster R-CNN论文翻译——中英文对照
- linux设置的依赖关系,linux:dpkg:依赖关系问题使得 skype 的配置工作不能继续:问题解决方法...
- Oracle 各备份恢复环境下 SCN
- LPC1768 PWM单边沿触发
- 交互工具 Framer 中文网全面更新,你可以分享灵感啦
- MySQL备份恢复练习
- android电话遥控+android盒子,玩转Android盒子,空中鼠标才是绝配
热门文章
- 【推荐算法论文阅读】STAMP: Short-Term Attention/Memory Priority Model for Session-based Recommendation
- 单精度和双精度的区别
- leapftp:425 failed to establish connection解决方法
- C语言实现的获取文件夹内文件名
- linux环境下,集群中Hadoop版本更换
- C# winform 选择文件保存路径
- 火绒阻止腾讯过度侵权行为,马化腾自查承认是团队违规,腾讯电脑管家道歉
- 苹果ipadmini1 主板 电路图 超清
- 计算机类耗品有哪些,办公用品和办公耗材清单有哪些?
- 广义线性模型和线性回归