美文网首页
selenium(一)

selenium(一)

作者: 弓长_88c0 | 来源:发表于2022-12-25 16:31 被阅读0次

    简介

    • 最初是作为自动化工具,网页测试工具。能够像正常浏览器一样执行js、ajax,可以轻易过加密、验证等反爬技术。在反爬越来越严格的今天,可以有效地爬取一些网站,比如京东。

    程序启动

    • 驱动下载:选取和自己的chrome、msedge、firefox版本对应的驱动。
    • python安装selenium库,pip install selenium就行。
    • 然后可以自定义驱动和chrome文件路径,主要是方便一些绿软爱好者。
        Option=Options()
        Option.binary_location=r"D:\python\Chrome\Chrome-bin\chrome.exe"
        S =Service(r"D:\python\Chrome\chromedriver.exe")
    

    参数设置

    • 反爬当然不会放过selenium,所以需要设置一些参数
        Option.add_argument("--disable-blink-features=AutomationControlled")
        Option.add_experimental_option('excludeSwitches', ['enable-automation'])
        Option.add_experimental_option('useAutomationExtension', False)
    

    据说这样可以掩饰一些特征
    终极手段是这样:

    os.system(r'start D:\python\Chrome\Chrome-bin\chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\python\Chrome\Data"')
    Option.add_experimental_option('debuggerAddress', '127.0.0.1:9222')
    

    注意,这个和上面的excludeSwitches和useAutomationExtension冲突。

    还有几个设置,比较实用

        Option.add_argument('--headless') 
        Option.add_argument('--no-sandbox')
        prefs = {"profile.managed_default_content_settings.images": 2,'permissions.default.stylesheet':2}
        Option.add_experimental_option('prefs',prefs)
        WD=webdriver.Chrome(service=S,options=Option)
    

    相关文章

      网友评论

          本文标题:selenium(一)

          本文链接:https://www.haomeiwen.com/subject/zddgqdtx.html