2013-04-18 23 views
0

我試圖讓使用dictionary.com爲源的字典程序,但我找不到在源代碼中投入使用現場機械化(Python)的

from mechanize import Browser 

inp = raw_input("Enter Word: ") 
Word = (inp) 

SEARCH_PAGE = "http://dictionary.reference.com/" 

browser = Browser() 
browser.open(SEARCH_PAGE) 
browser.select_form(nr=0) 

browser['name of search form'] = Word 
browser.submit() 

搜索框中的名稱任何人都可以幫我做這項工作,或者幫我找到HTML源代碼中搜索欄的名稱嗎?

回答

1

您可以使用Browser.forms()方法查看錶單。 這些表單中的每一個都有一個名爲controls的變量, 表單中的控件列表。 此列表中的每個控件都有一個「名稱」變量。 您可以使用這些名稱使用瀏覽器進行索引,如您所知。

from mechanize import Browser 

inp = raw_input("Enter Word: ") 
Word = (inp) 

SEARCH_PAGE = "http://dictionary.reference.com/" 

browser = Browser() 
browser.open(SEARCH_PAGE) 

form = list(browser.forms())[0]      #The first form 
print form 
names = map(lambda n: n.name, form.controls) 
print names 

browser.select_form(nr=0) 

browser[names[0]] = Word 

txt = browser.submit().read() 

#txt has the html from dictionary.reference.com