【问题标题】:Pycharm selenium how to open actual webbroswer window (LINUX)Pycharm selenium 如何打开实际的网络浏览器窗口(LINUX)
【发布时间】:2021-04-09 02:39:02
【问题描述】:

为第一次发帖道歉,我是堆栈溢出的新手...非常感谢您的帮助... 我可以在不打开实际窗口的情况下运行它,但我想查看它打开的实际页面...... 我有.. - 进口操作系统 - 确保 webdriver 是最新的并匹配当前版本 -在路径上..(绝对和相对,甚至将驱动程序放在同一个文件中

  • 试过 Chrome 和 Firefox
  • 选中的 chown 是我并且是可执行的 - 当我输入 chromedriver 时,它将从单独的终端实例打开。 -'which chromedriver' 显示 /usr/bin/chromedriver (我用它作为路径。 我有一个运行 Ubuntu (POPos) 的全新 linux 系统 所有更新和升级。 不知道怎么回事……

从硒导入网络驱动程序 导入操作系统 进口时间

options = webdriver.ChromeOptions()
options.add_argument('--headless') # Remove this if you want a selenium controlled browser window
options.add_argument('--ignore-certificate-errors')
user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
options.add_argument('user-agent={0}'.format(user_agent))

preferences = {
        "profile.default_content_settings.popups": 0,
        "download.default_directory": os.getcwd() + os.path.sep,
        "directory_upgrade": True
} # My own set of preferences, use what you want
options.add_experimental_option('prefs', preferences)

driver = webdriver.Chrome("/home/wprice/PycharmProjects/sele/chromedriver-Linux64", options=options) # Since I am using Windows
driver.get("HTTPS://GOOGLE.COM")
time.sleep(20)
driver.save_screenshot("test.png")
ERRORS:

    /home/wprice/PycharmProjects/sele/bin/python /home/wprice/PycharmProjects/sele/sele.py
    Traceback (most recent call last):
      File "/home/wprice/PycharmProjects/sele/sele.py", line 18, in <module>
        driver = webdriver.Chrome("/home/wprice/PycharmProjects/sele/chromedriver-Linux64", options=options) # Since I am using Windows
      File "/home/wprice/PycharmProjects/sele/lib/python3.8/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
        self.service.start()
      File "/home/wprice/PycharmProjects/sele/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 98, in start
        self.assert_process_still_running()
      File "/home/wprice/PycharmProjects/sele/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 109, in assert_process_still_running
        raise WebDriverException(
    selenium.common.exceptions.WebDriverException: Message: Service /home/wprice/PycharmProjects/sele/chromedriver-Linux64 unexpectedly exited. Status code was: 127




【问题讨论】:

  • 请添加您正在执行的代码。
  • 请添加您看到的错误堆栈跟踪。

标签: python-3.x selenium webdriver


【解决方案1】:

我们没有你的代码/堆栈跟踪,所以我猜这可能是我目前能想到的以下问题之一::

  1. 您的编辑器找不到正确的网络驱动程序路径
  2. 您的 Chrome 网络驱动程序版本与安装的 chrome 版本不匹配
  3. 初始化 Web 驱动程序时出错

因此,基于此,您可以尝试此代码,只需将变量替换为正确的值,它应该可以工作

options = webdriver.ChromeOptions()
options.add_argument('--headless') # Remove this if you want a selenium controlled browser window
options.add_argument('--ignore-certificate-errors')
user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'
options.add_argument('user-agent={0}'.format(user_agent))

preferences = {
        "profile.default_content_settings.popups": 0,
        "download.default_directory": os.getcwd() + os.path.sep,
        "directory_upgrade": True
} # My own set of preferences, use what you want
options.add_experimental_option('prefs', preferences)

driver = webdriver.Chrome("CHROMEDRIVER.EXE_ABSOLUTE_PATH", options=options) # Since I am using Windows
driver.get("WEBSITE_TO_SCRAPE")
time.sleep(20)
driver.save_screenshot("test.png")

【讨论】:

    猜你喜欢
    • 2016-11-29
    • 1970-01-01
    • 2021-03-03
    • 2022-12-02
    • 1970-01-01
    • 2013-02-06
    • 2014-09-04
    • 2017-09-27
    • 1970-01-01
    相关资源
    最近更新 更多