微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在没有浏览器的情况下使用Selenium进行网络爬取

如何解决在没有浏览器的情况下使用Selenium进行网络爬取

我想使用python模块Selenium通过jupyter笔记本进行网络抓取。 jupyter笔记本在没有任何网络浏览器的docker容器中运行。我希望能够分发笔记本,以便其他用户可以复制网络抓取。笔记本计算机在通用的jupyter实验室容器上运行,因此无法更新该容器以包含浏览器。

我尝试了很多事情:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(ChromeDriverManager().install())

这:

!pip install chromedriver-binary
from selenium import webdriver
import chromedriver_binary  # Adds chromedriver binary to path

driver = webdriver.Chrome('/opt/conda/lib/python3.7/site-packages/chromedriver_binary')

对于这最后一种情况,我使用

查找了二进制文件
import chromedriver_binary
print(chromedriver_binary.__file__)

但是不幸的是,我无法使其中任何一个发挥作用。

解决方法

chrome驱动程序取决于本地安装的chrome-因此您必须修改用于首先安装chrome的docker映像。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。