当前位置: 首页 > 知识库问答 >
问题:

python使用selenium,错误:chrome意外退出。状态代码为:0

浦修文
2023-03-14

这不是转贴

硒。常见的例外。WebDriverException:消息:未知错误:Chrome无法启动:在Python中使用ChromeDriver和Selenium崩溃

我正在使用Linux,创建新配置文件不是一个选项。我想像selenium gui一样加载现有配置文件(而不是创建新配置文件)。

我能让chrome正常工作,但谷歌chrome不行。Chrome将打开,但会回退

selenium.common.exceptions.WebDriverException: Message: Service /opt/google/chrome/chrome unexpectedly exited. Status code was: 0

错误。

我正在尝试使用用户目录访问启动google chrome,以便捕获现有会话。

失败的代码:

option.add_argument("user-data-dir=/home/user/.config/google-chrome/Default/") #)PATH is path to your chrome profile
driver = webdriver.Chrome('/opt/google/chrome/chrome', options=option)

可以工作但启动chrome而不是google chrome的代码:

option.add_argument("user-data-dir=/home/user/snap/chromium/common/.cache/chromium/Default/") #)PATH is path to your>
driver = webdriver.Chrome('/snap/bin/chromium.chromedriver', options=option)

我确信我使用的是正确的可执行文件

我很确定我安装了正确的chrome驱动程序

root@Inspiron-laptop:/home/user# pip3 install chromedriver-autoinstaller
Requirement already satisfied: chromedriver-autoinstaller in /usr/local/lib/python3.8/dist-packages (0.2.2)

只是用错了。

如何在访问缓存目录时从selenium中启动google-chrome?

我在Ubuntu 20.04上

更新:

完整脚本

#!/usr/bin/python3

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from seleniumbase import BaseCase
from selenium.webdriver.chrome.options import Options
import time
import random

minptime = 25
maxptime = 120

class MyweClass(BaseCase):
        def method_a():
                option = webdriver.ChromeOptions()
                option.add_argument('--disable-notifications')
                option.add_argument("--mute-audio")
                option.add_argument("user-data-dir=/home/user/.config/google-chrome/Default/") #)PATH is path to your chrome profile
                driver = webdriver.Chrome('/opt/google/chrome/chrome', options=option)
                driver.get("https://world.com/myworld")
                print(f'driver.command_executor._url: {driver.command_executor._url}')
                print(f'driver.session_id: {driver.session_id}')
                time.sleep(18)
                return driver
driver = MyweClass.method_a()

更新二:

使用相同的错误

option.add_argument("user-data-dir=~/.config/google-chrome/Default/")

driver = webdriver.Chrome('/opt/google/chrome/google-chrome', options=option)

chmod -R 777 /home/user/.config

以确保用户以用户身份访问缓存目录。

谷歌浏览器信息:

共有1个答案

邢起运
2023-03-14

Chrome在启动期间崩溃的一个常见原因是在Linux上以root用户(管理员)身份运行Chrome。虽然在创建WebDriver会话时,可以通过传递--无沙盒标志来解决这个问题,但这种配置不受支持,并且非常不推荐。您需要将环境配置为以普通用户身份运行Chrome

此错误消息。。。

selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
  (Driver info: chromedriver=2.26.436382 (70eb799287ce4c2208441fc057053a5b07ceabac),platform=Linux 4.15.0-109-generic x86_64)

...意味着ChromeDriver无法启动/生成新的浏览上下文,即Chrome浏览器会话。

根据您的代码试用,您似乎正在尝试访问Chrome配置文件,以便使用以下解决方案:

>

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("user-data-dir=C:\\path\\to\\your\\profile\\Google\\Chrome\\User Data\\Profile 2")
driver = webdriver.Chrome(executable_path=r'C:\path\to\chromedriver.exe', chrome_options=options)
driver.get("https://www.google.co.in")

你可以在下面找到一些详细的讨论:

  • 如何通过Python打开Chrome配置文件
  • selenium.common.exceptions.WebDriverException:消息:未知错误:Chrome启动失败:在Python中与ChromeDriver和Selenium崩溃
  • 如何在Selenium WebDrive Python 3中使用Chrome配置文件
  • Selenium:指向默认Chrome会话

 类似资料:
  • 我试图在AWS Lambda中安装/运行无头Chrome,但在通过Lambda进行测试时出现以下错误。 " errorMessage ":"消息:Service /tmp/bin/chromedriver意外退出。状态代码为:127\n "," errorType": "WebDriverException " 我正在使用适用于Linux的ChromeDriver 83.0.4103.39。 在P

  • 我对使用selemium进行网络购物有很多问题。已安装并放置在与python文件相同的文件夹中。所有似乎在几秒钟内加载jupyter单元的建议都会在以下消息之后被拒绝:我使用下载它们。这里是我的代码: 我现在正在尝试通过下载铬来解决这个问题,但我发现错误,并且弹出窗口告诉我我的代码不可信。

  • 问题内容: 我试图使用Selenium运行无头Chrome浏览器以从网络上抓取内容。我使用wget安装了无头Chrome,然后将其解压缩到当前文件夹中。 现在,当我加载驱动程序时 我收到一个错误 更新资料 因此,经过一些研究,我尝试了另一种方法 在Google Colab上,这再次给了我相同的错误 问题答案: 我已经找到了有关为什么我出错的问题的答案。请安装chrome-chromedriver,

  • 我尝试了各种解决方案;使用GitHub作为部署方法,安装NPM包服务,强制清理缓存,重新安装node_modules 错误日志: 2022-01-17T16:20:29.660758 00:00 heroku[web.1]:进程以状态1退出2022-02-01-17:16:20:19.752386 00:00 heroku[web.1]::状态从开始更改为崩溃2022-1-17T15:20:30.

  • 我是在尝试 但是我有一个错误 使用缓存的PyAudio-0.2.11.tar.gz(37 kB)安装收集的软件包:pyaudio运行setup.py为pyaudio安装:开始运行setup.py为pyaudio安装:完成,状态为“错误” 错误:命令出错,退出状态为1:' C:\ Users \ Admin \ PycharmProjects \ AI \ venv \ Scripts \ pyth

  • 我在knpSnappyBundle上有这个错误,我正在尝试生成一个pdf,然后通过电子邮件发送它。 我的配置如下所示: 然后我的控制器: 完全错误消息: 退出状态代码“127”表示出现了问题:stderr:“sh:1:/usr/local/bin/wkhtmltopdf:未找到”stdout:“命令:/usr/local/bin/wkhtmltopdf--lowquality'/tmp/knp_s