0
我在嘗試獲取有關某些主機名的信息,例如註冊人的國家/地區。我發現IPWhois應該完成這項工作,但顯然它沒有給我預期的數據。從主機名獲取註冊人地址?
例如,我想知道哪個國家是諾基亞(答案:芬蘭)。我知道他們的主機名是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不顯示有關諾基亞的任何信息,但關於託管,這是在美國
在Ubuntu網絡工具的域名註冊,我可以見:
[…]
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
[…]
有沒有辦法獲得這種數據?
[編輯] 該腳本應該在Ubuntu服務器上工作(從12.04開始)。至於建議,我可以使用子庫調用check_output,例如:
from subprocess import check_output
output = check_output(['whois', 'nokia.com'])
然後我需要處理的輸出,因爲它可以從一個註冊商到另一個不同。
首先,它會很高興地告訴我們什麼操作系統,你運行該上 – 2016-12-02 16:44:28
,取決於您所使用的操作系統,巨蟒可能能夠運行操作系統提供的工具,並捕獲信息提供在您的腳本中使用。 – martineau
你的問題不清楚。如果從諾基亞等公司名稱中獲取數據,那麼這與互聯網無關,您需要在各個國家的公司註冊數據庫中進行搜索。如果您想從某個域名('nokia.com')獲取數據,請使用域名註冊管理系統whois並查看註冊人。如果來自某些主機名稱,因此需要知道IP地址(可以完全位於公司辦公室的其他位置),請在RIR服務器上使用whois;您有時也可以通過名稱查詢,以獲取組織註冊的IP塊。 –