问题

今天在使用selenium+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,了,建议使用火狐或者谷歌无界面浏览器。

解决方案

selenium版本降级
通过pip show selenium显示,默认安装版本为3.8.1。 
将其卸载pip uninstall selenium,重新安装并指定版本号pip install selenium==2.48.0。 
再次运行,发现没有报错,搞定!

使用无界面浏览器
Selenium+Headless Firefox
Selenium+Headless Firefox和Selenium+Firefox,区别就是实例option的时候设置-headless参数。

前提条件: 
- 本地安装Firefox浏览器 
- 本地需要geckodriver驱动器文件,下载地址:https://github.com/mozilla/geckodriver/releases/,

如果不配置环境变量的话,需要手动指定executable_path参数。

from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Optionsdef 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驱动器文件,下载地址:https://sites.google.com/a/chromium.org/chromedriver/home

如果不配置环境变量的话,需要手动指定executable_path参数。

示例:

from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsdef 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使用时报错原因及解决方案相关推荐

  1. mysql1045_win10系统登录mysql时报错1045的解决方案

    在刚刚安装的win10系统下登录MySQL时遇到1045错误提示,该怎么办?这是很多用户最近都向小编反馈的问题,每位用户都表示因为这个问题非常头疼.为了让大家更好地使用win10系统,下面就分享登录m ...

  2. MATLAB下载时报错原因

    MATLAB下载时报错原因 情况 报错 原因 情况 下载MATLAB到99%时失败 报错 background merge hit exception: _2y(4.6):C350989 _2x(4. ...

  3. KeyError: ‘Spider not found: itcast‘ 运行scrapy crawl时报错原因总结

    1. 由于运行scrapy genspider所在目录不在生成的爬虫项目文件夹下 错误重现 # 1. 创建爬虫项目 C:\scrapy>scrapy startproject myFirstSp ...

  4. oracle 01405 提取的值为null,ORA-01405: 提取的列值为 NULL--报错原因及解决方案

    报错信息:ORA-01405: 提取的列值为 NULL 问题出现原因:形如 SELECT a INTO :a FROM NewXCData WHERE a = 'test'; 如果a的值为空,则会报此 ...

  5. TypeError: fullscreen error at HTMLInputElement.toggleFullscreen 报错原因与解决方案

    在使用iframe进行内容嵌套时候,如果内层页面有全屏的功能,点击内层全屏功能,就可能出现上述报错. 原因: iframe是有一个默认的属性allowfullscreen,默认值为false,默认不支 ...

  6. 异常报错原因及解决方案

    java.lang.NullPointerException出现的几种原因以及解决 1.字符串变量未初始化 2.接口类型的对象没有用具体的类初始化,比如: Map map // 会报错 Map map ...

  7. 出现Unexpected token u in JSON at position 0 报错原因及解决方案

    出现问题的原因基本就是使用了JSON.parse(data) JSON中的值不能是undefined 这里面的    data   不能是   undefined类型,如果是undefined,指定会 ...

  8. Selenium | 引用WebElement时报错stale element reference: element is not attached to the page document

    当项目中需要断言文本是否在元素列表的文本集中时,在对元素列表中的元素for循环遍历进行WebElement.text 操作时,随机性的出现state element reference的报错信息 源代 ...

  9. 微信小程序 - Setting data field “xxx“ to undefined is invalid.报错原因及解决方案

    前言 ## 完整报错(SEO) ## 翻译: 将数据字段"XXX"设置为未定义是无效的. Setting data field "xxx" to undefin ...

最新文章

  1. 极光推送收不到推送消息
  2. 电大计算机应用基础 课程考核3,电大专科-计算机应用基础作业3答案.doc
  3. [python pycharm pytorch debug sets]
  4. linux中iptable中端口,Linux如何打开iptables中的端口
  5. php打印布尔型,PHP数据类型之布尔型的介绍_PHP
  6. BaseService代码示例
  7. 打破独立游戏开发者的困局
  8. Oracle DBA手记3:数据库性能优化与内部原理解析
  9. 随手记_英语_学术写作
  10. SystemExit: 2
  11. PDF文件批量添加目录详细教程
  12. ansys命令流力磁耦合仿真
  13. C++函数模板特化,类模板特化
  14. c语言的链表ppt,C语言链表详解ppt.ppt
  15. 大数据和数据挖掘是什么关系?
  16. 在Octane中提升渲染速度的技巧(第2部分)
  17. 简单文本API的解析(一言)
  18. JavaScript词汇表
  19. 一本正经的经验帖——如何使用FDM 3D打印机进行批量化生产
  20. 投CVPR过程中惊险的Rebuttal环节

热门文章

  1. altium designer丝印变绿,3D封装变绿,出现」25.4mm提示的解决方法
  2. 作业03:格式化输出
  3. 力扣(LeetCode)31
  4. asp.net C# MVC 提交表单后清空表单
  5. react七——react-redux
  6. 【jQuery Demo】图片瀑布流实现
  7. Word VSTO Error:Interop type 'Microsoft.Office.Interop.OneNote.Application' cannot be embedded...
  8. Oracle SQL之 序列使用限制
  9. java面试题,将String字符串转换成数字
  10. SharePoint中的列表(List) 与Content Type 之五