zoukankan      html  css  js  c++  java
  • Python实现网页自动化

    之前写过一篇  使用selenium控制(接管)已打开的浏览器(chrome),并通过WebDriver值检测

    1.安装selenium库

    pip install selenium

    2.到 http://npm.taobao.org/mirrors/chromedriver/下载 chromedriver

    我的chrome是版本 97.0.4668.0(正式版本)canary (64 位),该网页最新的只有95.0.4638.17/   ,就用这个试试吧
    下载win32版本,解压出  chromedriver.exe  放在 test.py所在目录

    3.test.py

    from selenium import webdriver
    
    #设置自动化打开的浏览器访问网址
    url = 'https://www.baidu.com'
    
    #设置谷歌浏览器driver的目录所在
    path = '.'
    
    browser = webdriver.Chrome(executable_path=path)
    
    #打开浏览器,并访问设置的网址。
    browser.get(url)

    运行,提示:PermissionError: [WinError 5] 拒绝访问。

    4 通过向python310文件夹或chromedriver.exer文件的 属性 赋予 Users组完全控制权限   也未能解决

    pip install --user --upgrade selenium 也不行。

    最后发现是上面代码中path路径不对,将

    path = '.' 改为
    path = './chromedriver.exe'

    这回提示:

    This version of ChromeDriver only supports Chrome version 95
    Current browser version is 97.0.4668.0 with binary path C:Users你的用户名AppDataLocalGoogleChrome SxSApplicationchrome.exe

    5 看样子要降级chrome至95版本

    5.1   访问 chrome://version/  记下个人资料路径

    5.2 利用win10自带功能卸载chrome(同时删除个人资料)

    5.3删除个人资料路径 C:UsersccAppDataLocalGoogleChrome SxSUser DataDefaultWeb Data文件

    5.4 到https://chromium.cypress.io/ 找到95.0.4638.17 Windows (x64)版本chrome ,可惜被墙了下不了,于是百度搜索从系统之家官网下了一个  ,安装后,显示无法再更新了,先用着吧。

     重新运行脚本test.py,可以了。

    总结:运行以下代码似乎通过了测试

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options 
    chrome_options = Options()
    chrome_driver = "chromedriver.exe" 
    driver = webdriver.Chrome(chrome_driver, options=chrome_options)
    script = '''
    Object.defineProperty(navigator, 'webdriver', {
        get: () => undefined
    })
    '''
    driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {"source": script})
    print(driver.title)
    driver.get("https://intoli.com/blog/not-possible-to-block-chrome-headless/chrome-headless-test.html")

    参考:https://www.cnblogs.com/chen1999/p/12906921.html

    https://blog.csdn.net/weixin_43870646/article/details/90020874

    https://www.cnpython.com/qa/103559

    https://blog.csdn.net/iphone108/article/details/103138026

  • 相关阅读:
    Spring Could与Dubbo、Docker、K8S
    Spring Could 问题
    再看Spring Could微服务的关键组件
    2018第46周日
    好用的天猫精灵
    好用的微软桌面
    PostgreSQL性能极限
    微服务常见问题及解决方案
    最近看到的几本书
    程序员如何修炼管理思维
  • 原文地址:https://www.cnblogs.com/pu369/p/15402865.html
Copyright © 2011-2022 走看看