【问题标题】:Format error in python Selenium packagepython Selenium包中的格式错误
【发布时间】:2019-01-12 13:47:30
【问题描述】:

我在 Linux Debian 9 和 PyCharm 上运行,用于网络抓取;我目前使用 Python 3.5 作为解释器。

脚本如下:

from selenium import webdriver
import time
import datetime
from selenium.webdriver.common.keys import Keys

到这里为止,通过正确导入包,脚本可以正常工作;当我尝试通过运行以下行来设置驱动程序时:

driver = webdriver.Firefox(executable_path='/home/quant/Desktop/DataDownload/venv/bin/geckodriver')

我收到以下与格式问题有关的错误消息:

Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/home/quant/Desktop/DataDownload/venv/lib/python3.5/site-packages/selenium/webdriver/firefox/webdriver.py", line 157, in __init__
    self.service.start()
  File "/home/quant/Desktop/DataDownload/venv/lib/python3.5/site-packages/selenium/webdriver/common/service.py", line 76, in start
    stdin=PIPE)
  File "/usr/lib/python3.5/subprocess.py", line 676, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.5/subprocess.py", line 1282, in _execute_child
    raise child_exception_type(errno_num, err_msg)
OSError: [Errno 8] Exec format error

在网上浏览,我发现这个问题可能是在可执行程序没有被解压并正确执行时出现的;为此,我按照以下步骤在终端上运行它们:

(1).zip文件从github网站的官方仓库下载:

wget [here][1]

(2)解压文件:

cd /home/quant/Downloads
tar -xvzf geckodriver-v0.21.0-arm7hf.tar.gz

(3) 使文件可执行:

chmod +x geckodriver

(4) 将文件移至以下路径:

mv geckodriver /home/quant/PycharmProject/DataDownloads/venv/bin/

有人可以帮我了解一下问题所在吗?

提前谢谢大家!!

【问题讨论】:

  • 不确定 Linux ,但在窗口中我们这样做 driver = webdriver.Chrome(executable_path = r'D:/Automation/chromedriver.exe')
  • 我发现我需要安装 Firefox 本身以及指定 geckodriver pah

标签: python python-3.x selenium selenium-webdriver geckodriver


【解决方案1】:

[Errno 8] Exec format error

这意味着您正在尝试运行针对不同架构编译的 geckodriver 版本...您下载了 ARM 版本 (geckodriver-v0.21.0-arm7hf.tar.gz),并且很可能在 x86/amd64 机器上运行。

解决方案: 返回 geckodriver 发布页面并为您的系统下载正确的版本:https://github.com/mozilla/geckodriver/releases

例如,如果你运行的是 64 位 Linux,你想下载:geckodriver-v0.21.0-linux64.tar.gz

【讨论】:

    猜你喜欢
    • 2016-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-14
    • 1970-01-01
    • 1970-01-01
    • 2018-01-07
    相关资源
    最近更新 更多