0

Python 3.x を使用して、Python で IP への DNS ルックアップを実行しようとしています。

次のような URL の長いリストを使用しています。

yahoo.com
google.com
linkedin.com
facebook.com
cnn.com
foxnews.com

ここに私のスクリプトがあります:

import socket

file = '/Users/Python/Scripts/URL-list.txt'

file_O=open(file, 'r')

for i in file_O:
    print(i + socket.gethostbyname('i'))`

何らかの理由で、一度に URL に対して実行すると完全に機能しますが、リストで実行すると、すべて同じ IP が返されます。これが例です。

yahoo.com
69.16.143.64

google.com
69.16.143.64

linkedin.com
69.16.143.64

facebook.com
69.16.143.64

cnn.com
69.16.143.64

foxnews.com
69.16.143.64

私は何が間違っているのですか?テキストファイルを読み取る方法を推測していますが、このIPはどのURLにもマップされていません。

4

1 に答える 1

3

次に、行を削除してからループを使用したいので、次のようなものがうまくいきます:

import socket
file = '/Users/Python/Scripts/URL-list.txt'
f = open(file, 'r')
lines = f.readlines()
f.close()
for i in lines:
    host = i.strip()
    print("%s - %s" % (host, socket.gethostbyname(host)))
于 2014-03-01T20:27:09.580 に答える