2009-09-26 85 views
0

我基本上要实现的东西,你可以键入任何URI(我可能会只处理HTTP)和我想回到URI中的域的A记录,我想服务器的IP地址。Python:抓取任何URI的记录?

我知道有,大多数人用它来寻找一个IP地址了ping命令,但我也知道有“主”和“挖”这是更具体的。

是否有我可以使用,将做到这对我有什么天然的功能呢?如果是这样,这个函数在它所接受的URI字符串和它所在的结构方面有多宽?我希望把它扔到:

而且已经基本上什么返回的IP地址。如果需要的话我可以照顾URI的解析(所以它的时候抬头一致的格式)我自己,这是一个额外的加虽然。

回答

5
py> import urlparse,socket 
py> p = urlparse.urlparse("http://stackoverflow.com/questions/1480183") 
py> p 
('http', 'stackoverflow.com', '/questions/1480183', '', '', '') 
py> host=p[1] 
py> ai=socket.gethostbyname(host) 
py> socket.gethostbyname(host) 
'69.59.196.211' 
+0

正是我在找的东西,非常感谢。 – 2009-09-26 01:34:16

+0

这让我乐不可支一些有多少人知道蟒蛇。我只是一个可怜的黑客,然而用python我仍然设法完成任务。 – twneale 2009-09-26 03:18:23

+0

p [1]不是主机: >>> p = urlparse.urlparse(“www.stackoverflow.com”) >>> p ('','','www.stackoverflow.com', '', '', '') >>> p [1] '' – foosion 2009-09-26 11:06:20