Bla*_*ole 25 python selenium geckodriver
我在以下代码中使用 geckodriver:
import time
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
url = 'https://www.idealista.com/venta-viviendas/barcelona/eixample/la-dreta-de-l-eixample/?ordenado-por=fecha-publicacion-desc'
options = Options()
options.headless = False
driver = webdriver.Firefox(options=options, executable_path='/home/kevin/Desktop/Inmosoft/geckodriver')
driver.get(url)
time.sleep(10)
Run Code Online (Sandbox Code Playgroud)
但每次我尝试执行时都会出现此错误:
我尝试按照此链接https://support.mozilla.org/en-US/kb/how-run-firefox-when-profile-missing-inaccessiblefirefox -P中的信息在 Firefox 中创建另一个配置文件。
看起来 geckodriver 与 firefox 是一个完全不同的实例,并且它不使用相同的配置文件,我如何在使用 geckodriver 时绕过此错误并创建配置文件?
小智 23
我曾经也有过一样的问题。就我而言,我使用的是 ubuntu 22.04,问题是 Firefox 默认情况下是通过 snap 安装的。解决办法是卸载firefox并安装它而不使用snap。这是执行此操作的链接。
Mar*_* B. 15
TL/DR;设置自定义TMPDIR https://github.com/mozilla/geckodriver/issues/2010
找到启动 geckodriver 并崩溃的测试,例如
bundle exec rspec spec/features/sessions_spec.rb
Run Code Online (Sandbox Code Playgroud)
当作业失败时,通过杀死它
ctrl+z # push job to background
kill %% # kill last job
# to kill all jobs do: sudo kill -9 `jobs -p -s`
Run Code Online (Sandbox Code Playgroud)
direnv通过如下方式设置自定义临时目录:
# .envrc
export TMPDIR="$HOME/tmp/some-project"
Run Code Online (Sandbox Code Playgroud)
您必须通过以下方式创建目录
mkdir -p ~/tmp/some-project
小智 11
我通过使用 snap 包解决了 Ubuntu 22.04 上的问题geckodriver。例如,我有一个$HOME/bin位于$PATH. 从那里我链接firefox.geckodriver到$HOME/bin/geckodriver
$ ln -s /snap/bin/firefox.geckodriver geckodriver
Run Code Online (Sandbox Code Playgroud)
可以firefox.geckodriver通过以下方式找到位置
$ whereis firefox.geckodriver
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16052 次 |
| 最近记录: |