Редактировать: Я не знаю, так ли это, но часто это происходит, когда я много тестирую и у меня запущено много скриптов на python. Обычно ни один из них не активен в одно и то же время, но я запустил несколько из них за короткий промежуток времени. Я не знаю, поэтому ли это начинает происходить ошибка.
Хорошо, вот моя дилемма. У меня есть учетная запись NordVPN, и я хочу случайно просмотреть IP-адреса для запросов, которые я делаю в Google. Это отлично работает .. иногда. По какой-то причине после нескольких пингов запроса моя программа начинает замедляться, а затем я получаю ошибки «Максимальное превышение числа подключений», и, насколько я могу судить, IP-адреса в порядке.
Я начал думать, что Google блокируетIP, но затем я запрашиваю на другой веб-сайт, и та же ошибка продолжается .. Я начал думать, что, возможно, прокси-сервер разрешает только определенное количество запросов в определенный период времени, поэтому я попробовал несколько бесплатных прокси, но я снова получаю те же ошибки .. В любом случае, если я ненадолго оставлю его в покое, кажется, что он работает нормально, а затем несколько десятков пингов и ошибки начинаются снова.
Единственное, о чем я могу думать, и не уверен, как я могу проверить или дажеЕсли возможно удаленное тестирование (рабочий маршрутизатор), возможно, что некоторые открытые соединения остаются открытыми и влияют на мой код, а затем, когда выбрасывается отставание открытых соединений, я могу возобновить работу в обычном режиме. Я начал искать, нужно ли мне «закрывать» мое соединение после моего запроса get, но это не кажется необходимым (хотя я даже не был уверен, что искал).
Это одна из версиймой код, я пробовал без сессий, я пробовал другой способ написания сессий. Кажется, что все работают одинаково:
import requests, random
username = 'xxx'
password = 'yyy'
with open('proxies.txt', 'r') as p:
proxy_lost = p.read().splitlines()
with open('data.txt', 'r') as d:
data = d.read().splitlines()
for i in data:
result = None
while result is None:
try:
proxy = proxy_list[random.randint(0,len(proxy_list)-1)] + '.nordvpn.com'
prox = 'socks5://{}:{}@{}:{}'.format(username, password, proxy, 1080) #I've also tried socks5h
with requests.Session() as r:
r.proxies['http': prox]
r.proxies['https': prox]
result = r.get('http://icanhazip.com')
print(result.text.strip())
Если у кого-то есть какие-либо идеи, то любая помощь приветствуется. Я достиг точки, когда я изо всех сил пытаюсь придумать новые идеи, чтобы попробовать.
Это пример одной из ошибок, которые я получаю в течение всего этого процесса:
Трассировка (последний вызов был последним): файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py", строка 809, в процессе согласования соединения (self, dest_addr, dest_port)Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py", строка 444, в _negotiate_SOCKS5 self, CONNECT, dest_addr) Файл "C: \ Users * \ AppData \"Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py ", строка 503, в _SOCKS5_request поднять SOCKS5AuthError (« Ошибка проверки подлинности SOCKS5 ») .SOCKS5AuthError: Ошибка проверки подлинности SOCKS5
Во время обработкивыше исключения произошло другое исключение:
Трассировка (последний вызов был последним): файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ contrib \ socks".py ", строка 88, в файле _new_conn ** extra_kw" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py ", строка 209, в create_connection повысить файл ошибки" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \socks.py ", строка 199, в create_connection sock.connect ((remote_host, remote_port)) Файл" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py ", строка47, в функции возврата оболочки (* args, ** kwargs) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ socks.py", строка 814, в коннект-рейсе GeneralProxyError(«Ошибка сокета», ошибка) socks.GeneralProxyError: Ошибка сокета: сбой аутентификации SOCKS5
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний вызов был последним): файл"C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py", строка 600, в urlopen chunked = chunked) Файл "C: \ Users * \ AppData \ Local\ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py ", строка 354, в _make_reпоискconn.request (метод, URL, ** httplib_request_kw) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ http \ client.py", строка 1244, в запросе self._send_request (метод,url, body, headers, encode_chunked) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ http \ client.py", строка 1290, в _send_request self.endheaders (body, encode_chunked = encode_chunked)Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ http \ client.py", строка 1239, в конечных заголовках self._send_output (message_body, encode_chunked = encode_chunked) Файл "C: \ Users * \AppData \ Local \ Programs \ Python \ Python37 \ lib \ http \ client.py ", строка 1026, в файле _send_output self.send (msg)" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \http \ client.py ", строка 966, в отправьте self.connect () Файл" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ connection.py ", строка 181, в connect conn = self._new_conn () Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ contrib \ socks.py", line 110, in _new_conn "Не удалось установить новое соединение:% s"% error urllib3.exceptions.NewConnectionError:: Не удалось установить новое соединение: сбой аутентификации SOCKS5
Во время обработки вышеуказанного исключения другое исключениеПроизошло:
Traceback (последний вызов был последним): файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы \ adapters.py", строка 449,в send timeout = timeout Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py", строка 638, в urlopen _stacktrace = sys.exc_info () [2]) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ urllib3 \ util \ retry.py", строка 399, в инкрементном увеличении MaxRetryError (_pool, url, error или ResponseError(причина)) urllib3.exceptions.MaxRetryError: SOCKSHTTPConnectionPool (host = 'icanhazip.com', port = 80): превышено максимальное количество попыток с помощью url: / (вызвано NewConnectionError (': не удалось установить новое соединение: сбой аутентификации SOCKS5')))
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний вызов был последним): файл "C: \ Users * \ Documents_Scripts \ Find Proxies \ FindProxies.py", строка 23, в результате = reports.get ('http://icanhazip.com', прокси = прокси) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы \ api.py",строка 75, в запросе возврата get ('get', url, params = params, ** kwargs) Файл "C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы \ api. py ", строка 60, в запросе return session.request (method = method, url = url, ** kwargs) Файл" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы\ sessions.py ", строка 533, в запросе resp = self.send (prep, ** send_kwargs) Файл" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы \ сеансы.py ", строка 646, в send r = adapter.send (запрос, ** kwargs) Файл" C: \ Users * \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ запросы \ adapters.py", строка 516, в сенd поднять ошибку ConnectionError (e, request = request) запросыподключение: сбой аутентификации SOCKS5 '))