2016-12-02 5 views
0

저는 등록자의 나라와 같은 일부 호스트 이름에 대한 정보를 얻으려고합니다. 나는 일을해야하는 IPWhois를 찾았지만 분명히 예상 데이터를주지 못한다.호스트 이름에서 등록자 주소 가져 오기?

예를 들어, 어느 나라가 Nokia와 관련되어 있는지 알고 싶습니다 (답변 : 핀란드). 그들의 호스트 이름이 nokia.com이라는 것을 알고 있습니다. 그래서 나는이 시도했다 :

import socket 
from ipwhois import IPWhois 
from pprint import pprint 
ip = socket.gethostbyname('nokia.com') 
obj = IPWhois(ip) 
pprint(obj.lookup_rdap(depth=1)) 

는 슬프게도 resutls 노키아에 대한 정보를 표시하지 않지만 우분투 네트워크 도구에서 후이즈를 사용하여 미국

에있는 호스팅, 대한, 내가 할 수있는 참조 :

[…] 
Registrant Name: Nokia Corporation 
Registrant Organization: Nokia Corporation 
Registrant Street: P.O. Box 226, Nokia Group 
Registrant City: Espoo 
Registrant State/Province: Espoo 
Registrant Postal Code: 00045 
Registrant Country: FI 
[…] 

이러한 종류의 데이터를 가져 오는 방법이 있습니까?

[편집] 스크립트는 우분투 서버 (12.04 이상)에서 작동해야합니다. 제안, 나는 예로서, check_output 호출하는 서브 프로세스 라이브러리를 사용할 수 있습니다 : 그것은 다른 등록 기관 다를 수 있습니다로

from subprocess import check_output 
output = check_output(['whois', 'nokia.com']) 

는 그럼, 출력을 처리해야합니다.

+1

첫째, 당신이 사용하고있는 OS에 따라 –

+0

에 당신이 실행중인 운영 체제 말해 좋을 것입니다, 파이썬은을 실행할 수 있습니다 OS 제공 도구 및 캡처 정보는 스크립트에서 사용하기위한 것입니다. – martineau

+0

질문이 명확하지 않습니다. 노키아와 같은 회사 이름에서 데이터를 가져오고 싶다면 인터넷과 관련이 없다면 다양한 국가의 회사 등록 데이터베이스에서 검색해야합니다. 일부 도메인 이름 ('nokia.com')에서 데이터를 원한다면 도메인 이름 레지스트리 whois를 사용하여 등록자를 살펴보십시오. 어떤 호스트 네임에서 IP를 호스팅하고 있다면 (회사 사무실의 다른 곳에서도 가능), RIR 서버에서 whois를 사용하십시오. 당신은 때로는 이름으로 쿼리 할 수도 있습니다. –

답변

0

IPWhois는 IP 주소를 소유하고 있습니다. Whois는 도메인의 소유권을 찾는 것입니다.

과 같이, python-whois를 사용해보십시오 :

In [15]: import whois 

In [16]: w = whois.whois('nokia.com') 

In [17]: for key in ('name', 'org', 'address', 'city', 'country'): print w[key] 
Nokia Corporation 
Nokia Corporation 
P.O. Box 226, Nokia Group 
Espoo 
FI 

In [18]: 
관련 문제