2014-04-25 41 views
1

我正在學習Python並嘗試使用BeautifulSoup解析數據。我希望它從whatsmyip網站打印IPv4而不是IPv6地址。我似乎無法弄清楚爲什麼它在IPv4中解析IPv6時,首先出現的是IPv4標籤中的IPv4地址。感謝任何幫助。BeautifulSoup從HTML中解析數字

import urllib2 
from bs4 import BeautifulSoup 

page = urllib2.urlopen("http://www.whatsmyip.net") 
pagehtml = page.read() 
page.close() 

soup = BeautifulSoup(pagehtml) 

data = soup.find_all("input") 
for input in data: 
    ip = input.get('value') 
print ip 

回答

0

只是因爲IPv6地址是最後一個在<input>元素中找到。您正在遍歷所有<input>元素,因此您的ip變量會記住最後一個元素。

試試這個:

print data[0].get('value') 
+0

哇!感謝你及時的答覆!!! – user3571487

+0

不客氣。如果你對我的回答滿意,你可以通過投票和接受來更好地表達它。 :) –