爬虫的使用过程中,网站最简单的反爬虫就是验证发起请求的客户端是否为浏览器,因此需要爬虫模拟浏览器对网站发起请求。

这里介绍一个fake_useraent

1、伪造useragent字符串,每次请求都使用随机生成的useragen

为了减少复杂度,随机生成UA的功能通过第三方模块库fake-useragent实现,使用pip进行安装

pip install fake-useragent

2、生成一个useragen字符串只需要如下代码

from fake_useragent import UserAgent

ua = UserAgent()

各浏览器的User-Agent

这个库还有一个其他的功能,就是可以随机各浏览器的的useragen:

print(ua.ie)

Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)

Opera浏览器的useragen:

print(ua.opera)

Opera/9.80 (Windows NT 6.1; U; zh-cn) Presto/2.6.37 Version/11.00

Chrome浏览器的useragen:

print(ua.chrome)

Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2

Firefox浏览器的useragen:

print(ua.firefox)

Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1

Safari浏览器的useragen:

print(ua.safari)

Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25

随机User-Agent

写爬虫最实用的就是可以随意变换headers,一定要有随机性

在这里写了三个随机生成UA,三次打印都不一样,随机性很强,十分方便

print(ua.random)

print(ua.random)

print(ua.random)

Mozilla/5.0 (X11; CrOS i686 3912.101.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, likeGecko) Chrome/37.0.2062.124 Safari/537.36

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36

Ps:也可以自己写一个useragen列表用于random作为useragent

这里是代码案例:

#用于爬取的url

from fake_useragent import UserAgent

from bs4 import *

import requests

url="http://baidu.com"

ua = UserAgent()

a=ua.random  #随机的一个user-agent

headers={

"User-Agent": a

}

res=requests.get(url,headers=headers)   #获取网页内容

t=res.text #返回的响应字符串

#这里模拟的时候只需要写user-agent字段即可

python爬虫模拟浏览器的两种方法_python3爬虫的模拟浏览器相关推荐

  1. python爬虫模拟浏览器的两种方法_python爬虫模拟浏览器访问-User-Agent过程解析

    这篇文章主要介绍了python爬虫模拟浏览器访问-User-Agent过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 模拟浏览器访问-Use ...

  2. python怎么模拟浏览器交互_干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏)...

    今天为大家带来的内容是:干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏) 文章主要介绍了python爬虫模拟浏览器的两种方法,结合实例形式分析了Python爬虫模拟浏览器的两种常见操 ...

  3. 站长在线Python精讲:在Python中格式化字符串的两种方法详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python中格式化字符串的两种方法详解>.本知识点主要内容有:使用%操作符格式化字符串和使用format()方法格式化字 ...

  4. python文字教程-Python在图片中添加文字的两种方法

    本文主要介绍的是利用Python在图片中添加文字的两种方法,下面分享处理供大家参考学习,下来要看看吧 一.使用OpenCV 在图片中添加文字看上去很简单,但是如果是利用OpenCV来做却很麻烦.Ope ...

  5. python自带的shell是什么-python中执行shell的两种方法总结

    一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: ...

  6. python 手动安装包的两种方法

    python 手动安装包的两种方法 对于 .tar.gz 的包来说 解压缩文件 aaaxxxx-1.0.1.tar.gz 移动到压缩文件所在目录 使用tar -zxvf aaaxxxx-1.0.1.t ...

  7. python list列表排序的两种方法及实例讲解

    对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...

  8. sqrt函数模拟实现的两种方法

    起因:在leetcode刷题时,有一道题目考察了有关sqrt的原理的题目,当时就去查了网上的文章,结果发现,一开始的时候看的很懵,最后也是搞定了两种方法,今天我就以最简单的方式写下这两种方式的思路讲解 ...

  9. python 修改文件创建时间_python 两种方法修改文件的创建时间、修改时间、访问时间...

    突如其来想知道一下 python 如何修改文件的属性(创建.修改.访问时间),于是就去网上搜集了可行方案,也就有了这篇博客 方案一 from win32file import CreateFile, ...

  10. python生成requirements.txt的两种方法

    python项目如何在另一个环境上重新构建项目所需要的运行环境依赖包? 使用的时候边记载是个很麻烦的事情,总会出现遗漏的包的问题,这个时候手动安装也很麻烦,不能确定代码报错的需要安装的包是什么版本.这 ...

最新文章

  1. java i18n实例_Java SpringMVC实现国际化整合案例分析(i18n) 专题
  2. 通过组策略和注册表关闭win7 UAC。
  3. python 类的绑定方法和非绑定方法
  4. NYOJ_1013除法表达式
  5. 人工蜂群算法_如果你的团队能够像人工蜂群一样战斗
  6. [leveldb] 3.put/delete操作
  7. PHP的time函数返回时间不正确
  8. 设计模式之禅之六大设计原则-依赖倒置原则
  9. AI岗位秋招纪实:算法原理扎实才是王道,而不是调参
  10. 笨方法“学习python笔记之条件控制
  11. SAP License:SAP评论
  12. 【Qtcreator】qtcreator的基本使用方法
  13. ElementUI:input表单验证
  14. 使用安卓的http进行数据的发送需要做的首先就是授权
  15. 计算机二级公共基础知识(四)—— 数据库设计基础
  16. 逆向工具IDA安装教程
  17. 开心盒子助手3.0版|开心盒子助手工具3.0电脑版
  18. html支付宝图标,支付宝小程序基础组件 图标·Icon
  19. python实现mysql多条件查询筛选功能
  20. 【数学逻辑思维】好玩的数独游戏(高难度版)——003

热门文章

  1. 有了这款神器,什么吃灰文件都统统现形~极速搜索工具Everthing
  2. 基于微信小程序的物业维修报修系统设计与实现毕业设计毕设开题报告参考
  3. 春节假期,把“电影院”搬回家,泰捷WEBOX T1S 投影仪全面评测
  4. 如何生成随机验证码图片
  5. 一张图带你复习《数字信号处理》、《数字电路》、《电磁场理论》
  6. 调用阿里API实现图片验证码识别
  7. Bug Algorithms
  8. 联想开机启动项按哪个_联想笔记本进bios按什么键
  9. 阿铭Linux_网站维护学习笔记201903026
  10. 前端福利 - h5源码一键下载