• selenium(五)伪造浏览器


    简介:

    这个就比较好玩了,大家还记得以前的QQ小尾巴么?还有百度贴吧的小尾巴,就是那个来自***的iphone7,这个功能。

    这个功能是基于浏览器的user-agent功能实现的。

    还是httpbin.org

    http://httpbin.org/user-agent

    User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。

    服务器能够识别你的操作系统,浏览器,就可以针对性的给你返回适合你的设备。通俗讲,就是手机可以浏览手机版的页面,电脑可以浏览电脑版的页面。以前还有什么手机版,触屏版……

    浏览器现在都有插件来实现更换UA了。selenium,我们也要更换啊。尤其是那个请在微信中打开……,那是在微信中内置了一个浏览器,有它自己的UA,服务器知道你用的是微信内置浏览器,就给你访问,如果不是,就提示你请在微信中打开。

    我去找一个微信UA

    Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_1 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A403 MicroMessenger/6.3.27 NetType/WIFI Language/zh_CN

    据说这样的UA,就可以打开了,你可以用浏览器插件更换后试一试。我就不给你看我的UA了。有人说只要UA中包含(MicroMessenger)就可以。我也不测试了。

    目标:使用selenium,来替换UA。

    一:selenium 查看现在的UA。

    from time import sleep
    from selenium import webdriver
    driver=webdriver.Firefox()
    driver.get('http://httpbin.org/user-agent')

     二:firefox替换UA

    from selenium import webdriver
    ua='Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_1 like Mac OS X) 
    AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A403 
    MicroMessenger/6.3.27 NetType/WIFI Language/zh_CN'
    profiel = webdriver.FirefoxProfile()
    profiel.set_preference('general.useragent.override',ua)
    driver=webdriver.Firefox(firefox_profile=profiel)
    driver.get('http://httpbin.org/user-agent')

    好了,这就替换了

    三:chrome替换UA

    from selenium import webdriver
    ua='Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_1 like Mac OS X) 
    AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A403 
    MicroMessenger/6.3.27 NetType/WIFI Language/zh_CN'
    options=webdriver.ChromeOptions()
    options.add_argument('user-agent=' + ua)
    driver=webdriver.Chrome(options=options)
    driver.get('http://httpbin.org/user-agent')

    好了,这就替换了

    四:深入思考

    firefox可以通过webdriver -> FirefoxProfile -> set_preference (名称 ,值) 来替换设置浏览器的参数

    chrome 可以通过 webdriver -> ChromeOptions -> add_argument (名称=值)来替换设置浏览器的参数

    那么都有哪些参数可以设置呢?

    firefox下:可以打开 about:config 来查看可以设置的选项

    Chrome :可以设置的启动参数列表  https://peter.sh/experiments/chromium-command-line-switches/

    我现在就用这么多,更多的配置参数,自己查吧。

  • 相关阅读:
    六.初识Mybatis
    python中文资源大全
    阅读《乌云回忆录一》后的一点感慨
    SSH无法连上CentOS7的问题
    [转]sqlmap使用教程
    [转]11种常见sqlmap使用方法详解
    ZVulDrill渗透环境搭建及部分题目writeup
    渗透资源大全-整理
    【洛谷5934】[清华集训2012] 最小生成树(最小割)
    【洛谷3974】[TJOI2015] 组合数学(模拟最大流)
  • 原文地址:https://www.cnblogs.com/jackadam/p/8421500.html
Copyright © 2020-2023  润新知