В Python3.6 (модуль селена): ConnectionAbortedError: [WinError 10053] Установленное соединение было прервано программным обеспечением на вашем хост-компьютере. - PullRequest
0 голосов
/ 03 июля 2018

Я изучаю Python с книгой «Автоматизируй скучные вещи с помощью Python» (написанной Al Sweigart), и у меня возникла проблема с очисткой веб-страниц (глава 11), а именно селеновым модулем. Я пишу следующее в Python IDLE:

>>> from selenium import webdriver
>>> browser = webdriver.Firefox() # Here Windows command black window appears
                                  # and Mozilla Firefox with blank page opens
>>> browser.get('http://inventwithpython.com')
    Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    browser.get('http://inventwithpython.com')
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 326, in get
    self.execute(Command.GET, {'url': url})
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 312, in execute
    response = self.command_executor.execute(driver_command, params)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 472, in execute
    return self._request(command_info[0], url, body=data)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 495, in _request
    self._conn.request(method, parsed_url.path, body, headers)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1239, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1285, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1234, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1065, in _send_output
    self.send(chunk)
  File "C:\Users\forwa\AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 986, in send
    self.sock.sendall(data)
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine

>>> browser.get('http://inventwithpython.com')

Когда я пишу >>> browser.get('http://inventwithpython.com') в первый раз, возникает ошибка. Когда я пишу эту команду во второй раз, браузер Mozilla Firefox открывает нужную веб-страницу. Когда я пишу команду в третий раз, снова возникает ошибка ConnectionAbortedError и т. Д. - нечетные времена записи команды (1, 3, ...) приводят к ошибке ConnectionAbortedError, а четные времена (2, 4, ..). .) пройти без ошибок. Я пытался отключить антивирус и брандмауэр, но это не помогло. Пожалуйста, помогите мне с проблемой. Постскриптум У меня ОС Windows 10.

1 Ответ

0 голосов
/ 09 июля 2018

Я являюсь автором Automate the Boring Stuff с помощью Python. Я также столкнулся с этой ошибкой на компьютере Windows 10. Согласно этому ответу StackOverflow https://stackoverflow.com/a/51005821/1893164 это похоже на проблему с geckodriver 0.21.0.

Обходной путь, который мне помог, заключался в установке более старой версии geckodriver, 0.20.1, которую вы можете скачать здесь: https://github.com/mozilla/geckodriver/releases/tag/v0.20.1

...