2014-03-01 3 views
0

Python 3.x를 사용하여 Python으로 IP에 DNS 조회를 시도하고 있습니다. 내가 한 번에 URL을 위해 그것을 실행할 때, 어떤 이유로값 목록에서 DNS 역방향 조회 - Python

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을의 긴 목록 사용

메신저 : 여기

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

내 scirpt입니다 완벽하게 작동하지만 내 목록에서 실행하면 모두 동일한 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에 매핑되지 않습니다.

+0

"DNS 역방향 조회"검색을 ** 도메인 이름에 대한 주어진 ** * * ip **. 목록에 이미 도메인이 있습니다. 역방향 DNS 조회가 필요하지 않습니다. – jfs

답변

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))) 
+0

for i in file_O :'는 파일을 한 줄씩 읽습니다. 파일은 회선을 통한 반복자입니다. 행을 읽으려면'.readlines()'이 필요 없다. – jfs

+0

감사합니다. 편집 됨. – user273324