Запуск веб-драйвера с прокси-сервером InvalidArgumentError - PullRequest
0 голосов
/ 13 апреля 2020

я пытаюсь запустить webdriver. Firefox () с использованием прокси-сервера, который я искал для нескольких решений, и каждый раз, когда я проверяю свой IP-адрес, изменений нет, у меня работало одно решение:

def install_proxy(PROXY_HOST,PROXY_PORT):
    fp = webdriver.FirefoxProfile()
    print(PROXY_PORT)
    print(PROXY_HOST)
    fp.set_preference("network.proxy.type", 1)
    fp.set_preference("network.proxy.http",PROXY_HOST)
    fp.set_preference("network.proxy.http_port",int(PROXY_PORT))
    fp.set_preference("network.proxy.https",PROXY_HOST)
    fp.set_preference("network.proxy.https_port",int(PROXY_PORT))
    fp.set_preference("network.proxy.ssl",PROXY_HOST)
    fp.set_preference("network.proxy.ssl_port",int(PROXY_PORT))  
    fp.set_preference("network.proxy.ftp",PROXY_HOST)
    fp.set_preference("network.proxy.ftp_port",int(PROXY_PORT))   
    fp.set_preference("network.proxy.socks",PROXY_HOST)
    fp.set_preference("network.proxy.socks_port",int(PROXY_PORT))   
    fp.set_preference("general.useragent.override","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A")
    fp.update_preferences()
    return webdriver.Firefox(firefox_profile=fp)

проблема в том, что когда я запускаю его в режиме ожидания и не могу принимать команды в течение нескольких секунд, я получаю эту ошибку:

Traceback (most recent call last):
  File "<pyshell#48>", line 1, in <module>
    ee = webdriver.Firefox()
  File "C:\Program Files (x86)\python3\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 170, in __init__
    keep_alive=True)
  File "C:\Program Files (x86)\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 156, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Program Files (x86)\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 245, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Program Files (x86)\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 314, in execute
    self.error_handler.check_response(response)
  File "C:\Program Files (x86)\python3\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: InvalidArgumentError: Expected "socksVersion" to be a positive integer, got [object Undefined] undefined

1 Ответ

0 голосов
/ 14 апреля 2020

Возникло исключение, которое сообщает вам, что ожидается socksVersion, попробуйте, например:

fp.set_preference("network.proxy.socksVersion", 1)
...