您的位置: 网站首页> selenium爬虫> 当前文章

selenium随机useragent,cookie,headers头自定义

老董2020-11-28164围观,118赞

  人类都知道selenium可以通过option.add_argument()函数 来添加启动配置从而实现UA的定义,但是如果我们想实现每次请求随机一个UA那么这种办法就不合适了!因为启动配置是在driver启动前配置的,总不能每次访问1个页面重新启动1次driver吧。

  而且,有些同学还想自定义完整的请求头(header)信息,selenium又该如何去实现这个需求呢?诸位看官莫急,鄙人千辛万苦终于找到了一种实现每次请求可以随机UA或者请求头的方法(只需配置1次driver,然后每次访问页面可以自定义headers)。

  鉴于这个方法目前知道的人比较少,在网上基本也看不到类似信息,暂时还不想放在网上被各种复制粘贴(网上无脑复制粘贴的过程中有可能还出错),具体的使用可以加文章底部的微信来了解(回复慢就拿红包开路)。

  上述方法可以实现每次请求一个url前自定义headers或者只定义user_agent或者cookie等信息(加我不要白嫖,打赏包泡面)。

  经过使用,反复测试,发现了一些注意事项:

  1、假设一开始自定义请求头(UA为ua1,Cookie为cookie1),去请求url1。然后不重新定义而是再请求url2或者刷新(driver.refresh)url1,那么这第2次请求ua1依然是ua1,但是cookie1会丢失。

  2、假设自定义请求头(UA为ua1,Cookie为cookie1)后,去请求url1,然后点击了url1页面的1个搜索按钮,发送了ajax请求而导致url1页面内容和浏览器地址栏url变化(浏览器仍处于当前标签页),那么此次ajax请求ua1和cookie1不会丢失。

  3、自定义请求头,以UA为例,实现的效果是发送http请求UA是变化的,但是浏览器本身的navigator.userAgent不会变化(有些检测UA的网站是后端取http请求头信息,有些是前端是取的navigator.userAgen,两者未必总是一致)。

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    selenium随机useragent,cookie,headers头自定义文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 博主微信:a772483200