imaplib не работает для меня, когда я передаю список хостов - PullRequest
0 голосов
/ 04 октября 2019

Ниже мой код, который я использую, я не получаю никакого результата для этого.

import sys
import imaplib
import socket

def manualparser(host,hostname):
    email = ("info@"+host)
    password = "Welcome"
    print ("reaches here")
    imap = imaplib.IMAP4_SSL(host)
    imap.login(email, password)
    print (imap)
    print ("but not here")

def manualmethod(hostname):
    try:
        sub = ['imap','mail','pop','pop3','imap-mail','inbound','mx','imaps','smtp','m']
        for host in sub:
            host = host + '.' + hostname
            manualparser(host,hostname)
    except:
        None

if __name__ == '__main__':
    hostlist = ['roadcoffee.bg','qq.com']
    for line in hostlist:
        test = manualmethod(line)

В качестве вывода я получаю следующее

reaches here
reaches here

Пожалуйста, помогите мне найти проблему здесь.

reaches here
Traceback (most recent call last):
  File "checker.py", line 23, in <module>
    test = manualmethod(line)
  File "checker.py", line 18, in manualmethod
    manualparser(host,hostname)
  File "checker.py", line 9, in manualparser
    imap = imaplib.IMAP4_SSL(host)
  File "/usr/lib/python3.7/imaplib.py", line 1288, in __init__
    IMAP4.__init__(self, host, port)
  File "/usr/lib/python3.7/imaplib.py", line 198, in __init__
    self.open(host, port)
  File "/usr/lib/python3.7/imaplib.py", line 1301, in open
    IMAP4.open(self, host, port)
  File "/usr/lib/python3.7/imaplib.py", line 299, in open
    self.sock = self._create_socket()
  File "/usr/lib/python3.7/imaplib.py", line 1291, in _create_socket
    sock = IMAP4._create_socket(self)
  File "/usr/lib/python3.7/imaplib.py", line 289, in _create_socket
    return socket.create_connection((host, self.port))
  File "/usr/lib/python3.7/socket.py", line 707, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
  File "/usr/lib/python3.7/socket.py", line 748, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

После удаления защелки я вижу вышеуказанную ошибку. Любая идея, в чем может быть проблема?

Моя цель сценария состоит в том, чтобы найти правильный поддомен для imap.

...