我是靠谱客的博主 英勇汽车,最近开发中收集的这篇文章主要介绍selenium循环爬虫问题解决,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、打开多个浏览器问题
循环爬去多个网站时,直接用一下代码:

 driver = webdriver.Firefox()
 driver.get(url)

这样用循环的方式爬取时,每调用一次driver时,会打开一个浏览器窗口,多次打开会很难受,而且系统也受不了,所以可以用headless操作,不用打开窗口直接获取源码。

option = webdriver.FirefoxOptions()
option.set_headless()
driver = webdriver.Firefox(firefox_options=option)

解决弹窗问题。
二、报错问题
多次循环调用webdriver.Firefox()时,会报错 selenium.common.exceptions.WebDriverException: Message: connection refused,我认为主要因为后台打开太多浏览器,而未关闭,导致报错,因此我在用selenium模拟浏览器获取page_source后,调用quit()函数关闭浏览器,后不会再报错。代码如下:

driver.get(url)
content = driver.page_source
firefox_driver.quit()

三、打开webdriver时报错
很多时候由于没有安装geckodriver,会报错Message: ‘geckodriver’ executable needs to be in PATH,Ubuntu报错时下载geckodriverckod,解压后放到/usr/local/bin/ 路径下,即可解决错误。

最后

以上就是英勇汽车为你收集整理的selenium循环爬虫问题解决的全部内容,希望文章能够帮你解决selenium循环爬虫问题解决所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部