美文网首页
Selenium最新版本不再支持PhantomJS

Selenium最新版本不再支持PhantomJS

作者: cz_布衣 | 来源:发表于2018-09-03 10:44 被阅读0次

    今天想对《自动读取单位某系统数据》一文中的项目做些优化,将Selenium+firefox改为无界面的PhantomJS,出现如下错误:

    UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead
      warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless '
    

    百度:意思是说Selenium不再支持PhantomJS,请用无界面版本的chrome或firefox代替。

    • 完美解决方法转发自这个博客:Selenium+PhantomJS使用时报错原因及解决方案
    • 在使用webdriver驱动器文件时,建议还是将其解压至某个目录,再手动指定executable_path参数,省得去设置环境参数(主要是因为我的mac里设置后总是不能用)。

    使用无界面浏览器

    Selenium+Headless Firefox

    Selenium+Headless FirefoxSelenium+Firefox,区别就是实例option的时候设置-headless参数。

    前提条件:

    • 本地安装Firefox浏览器
    • 本地需要geckodriver驱动器文件,如果不配置环境变量的话,需要手动指定executable_path参数。

    示例代码:

    from selenium.webdriver import Firefox
    from selenium.webdriver.firefox.options import Options
    
    
    def main():
        options = Options()
        options.add_argument('-headless')
        driver = Firefox(executable_path='./geckodriver', firefox_options=options)
        driver.get("https://www.qiushibaike.com/8hr/page/1/")
        print(driver.page_source)
        driver.close()
    
    
    if __name__ == '__main__':
        main()
    
    Selenium+Headless Chrome

    Firefox类似,双手奉上。

    前提条件:

    • 本地安装Chrome浏览器
    • 本地需要chromedriver驱动器文件,如果不配置环境变量的话,需要手动指定executable_path参数。

    示例:

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    
    def main():
        chrome_options = Options()
        chrome_options.add_argument('--headless')
        chrome_options.add_argument('--disable-gpu')
        driver = webdriver.Chrome(executable_path='./chromedriver', chrome_options=chrome_options)
        driver.get("https://www.baidu.com")
        print(driver.page_source)
        driver.close()
    
    
    if __name__ == '__main__':
        main()
    

    如果本文对您有帮助,请给我留个言。谢谢!

    相关文章

      网友评论

          本文标题:Selenium最新版本不再支持PhantomJS

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