0

URLのIPを見つけることができるPythonで簡単なプログラムをコーディングしていました。次のエラーが表示されます。

File "wexec.py", line 40, in hell
  ipname = socket.gethostbyname('http://%s' % (hcon))
socket.gaierror: [Errno 11004] getaddrinfo failed

何が間違っていたのかわかりませんが、ここに私の関数コードがあります:

def hell():

    hcon = raw_input(Fore.RED + Style.BRIGHT + "Website: ")
    h1 = httplib.HTTPConnection('http://%s:80' % (hcon))
    urlopen = urllib.urlopen('http://%s:80' % (hcon))   
    ipname = socket.gethostbyname('http://%s' % (hcon))
    print(strftime("[%H:%M:%S]", gmtime()) + " Found IP: %d " % (ipname))
    enter = raw_input("Press enter or any other key to continue.")

hell()

ご覧のように。Web サイトへの HTTP 接続を開き、urllibb で URL を開き、Web サイトの IP を取得します。しかし、ご覧のとおり、何が間違っているのかわかりません。誰か助けてくれませんか?

4

1 に答える 1

2

socket.gethostbyname() はドメイン名のみを取得するため、その呼び出しから「http://」を削除する必要があります。httplib と urllib への呼び出しが何をしているのかはわかりませんが、このスニペットからは不要のようです。

于 2013-07-31T22:15:19.637 に答える