任何人都可以幫助我得到此表單選擇正確嗎?mechanize._mechanize.FormNotFoundError:無表單匹配名稱'q'
試圖讓谷歌的抓取,我得到的錯誤: mechanize._mechanize.FormNotFoundError:沒有形成匹配的名字「Q」
不尋常的,因爲我一直在使用它看到其他幾個教程和: PS我不打算用請求SLAM google,只是希望使用自動選擇器不時尋找學術引文pdf。
<f GET http://www.google.com.tw/search application/x-www-form-urlencoded
<HiddenControl(ie=Big5) (readonly)>
<HiddenControl(hl=zh-TW) (readonly)>
<HiddenControl(source=hp) (readonly)>
<TextControl(q=)>
<SubmitControl(btnG=Google ?j?M) (readonly)>
<SubmitControl(btnI=?n???) (readonly)>
<HiddenControl(gbv=1) (readonly)>>
>>> quit()
import os, subprocess
import re
import mechanize
from bs4 import BeautifulSoup
#prepare mechanize
br = mechanize.Browser()
br.set_handle_robots(False)
br.set_handle_equiv(False)
br.addheaders = [('User-agent', 'Mozilla/5.0')]
br.open('http://www.google.com/')
br.select_form('q')
citation = ' www.stackoverflow.com '.strip()
#citation = GOOGLE_BASE + Citation
print citation
br.open('http://www.google.com/')
br.select_form('q')
br.form['q'] = citation
br.submit()
data = br.read()
soup = BeautifulSoup(data)
print soup
在未來,如果谷歌要改變表單的名稱,或者像這樣的其他網站你能讓我知道如何獲得表單名稱? –
當然,請參閱最新的答案。 – cyroxx