@bot123123
bot

[Errno 11001] getaddrinfo failed?

Добрый день.
На линукс стоит Python3.6.9 - код отрабатывает как нужно.
На виндовс Python3.8.2 - ошибка [Errno 11001] getaddrinfo failed.
Почему так ?
def timeout_try_1(ip,port,timeout):
  sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  sock.settimeout(timeout)
  
  try:
    connect = sock.connect((ip,int(port)))
    print(ip.rstrip('\r\n') + ' ' + port)
    write_ip_in_file(port, ip)
    connect.close()

  except socket.timeout:
    t2 = threading.Thread(target = timeout_try_2, args = (ip, port, float('0.1')))
    t2.start()
    t2.join(0.01)

  except Exception as e:
    print(e)


def timeout_try_2(ip, port, timeout):
  sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  sock.settimeout(timeout)

  try:
    connect = sock.connect((ip,int(port)))
    print(ip.rstrip('\r\n') + ' ' + port)
    write_ip_in_file(port, ip)
    connect.close()

  except socket.timeout:
    pass

  except Exception as e:
    print(e)

for port in ports:
    file_result_ips = open('result_ips.txt', 'r')
    for ip in file_result_ips:
        t1 = threading.Thread(target = timeout_try_1, args = (ip, port, float('0.01')))
        t1.start()
        t1.join(0.001)

Ошибка:
connect = sock.connect((ip,int(port)))
socket.gaierror: [Errno 11001] getaddrinfo failed

Перенастраивал таймауты - не помогает . Отключал Firewall - тоже.
  • Вопрос задан
  • 754 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ответ от поддержки Timeweb)

Необходимо проверить, какой ip и порт указан в соответствующих переменных, а также в целом проверить их доступность с компа, где запускается скрипт.

Напишите больше вводных и поддержка поддержит
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы