python错误-无效参数:无法杀死退出的进程

问题描述 投票:0回答:1
import sys
link = sys.argv[1]
link = link.replace("%26", "&")
link = link.replace("######", "&")
myProxy = sys.argv[2]

from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType
from selenium.webdriver.firefox.options import Options

proxy = Proxy({
  'proxyType': ProxyType.MANUAL,
    'httpProxy': myProxy,
    'ftpProxy': myProxy,
    'sslProxy': myProxy,
    'noProxy': ''
})

options = Options()
options.headless = True
options.Proxy = proxy
driver = webdriver.Firefox(options=options)
driver.set_page_load_timeout(10000)
driver.get(link)
s = driver.page_source
print((s.encode("utf-8")))
print (driver.get_cookies())
driver.quit()

此代码几天前完美运行,然后我刚刚注意到此消息:

driver = webdriver.Firefox(options=options)
  File "/usr/local/python3/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py", line 174, in __init__
    keep_alive=True)
  File "/usr/local/python3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "/usr/local/python3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/usr/local/python3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/usr/local/python3/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: invalid argument: can't kill an exited process

我在互联网上搜索了一些解决方案,人们建议将其放在代码中:

 options = Options()
    options.headless = True

但是我的代码中已经有了这个,因此仍然不是解决问题的办法,我还能做些其他事情吗?我应该以哪种方式找到解决方案的任何帮助或建议会有所帮助?

python selenium firefox geckodriver gecko
1个回答
0
投票

基于代理设置,我认为问题出在noProxy选项中

webdriver W3C说它应该是array

参考:https://w3c.github.io/webdriver/#proxy

查看为错误配置提供的选项和值。

© www.soinside.com 2019 - 2024. All rights reserved.