到目前为止,我借用的代码在Google.com上运行良好,但在pastebin.com上却没有,我会喜欢为什么我无法搜索pastebin.com的一些输入
import re
from mechanize import Browser
br = Browser()
# Ignore robots.txt
br.set_handle_robots( False )
# user-agent that isn't a robot
br.addheaders = [('User-agent', 'Firefox')]
# Retrieve the web page
br.open( "http://pastebin.com" )
# Select the search box and search for 'foo'
br.select_form( 'f' )
br.form[ 'q' ] = 'facebook'
# Get the search results
br.submit()
# Find the link
resp = None
for link in br.links():
siteMatch = re.compile( 'www.facebook.com' ).search( link.url )
if siteMatch:
resp = br.follow_link( link )
break
# Print the site
content = resp.get_data()
print content
答案 0 :(得分:0)
br.select_form( 'f' )
br.form[ 'q' ] = 'facebook'
Pastebin主页上没有名为" f"的表格。阅读页面的来源以找到正确的名称。
答案 1 :(得分:0)
您所描述的问题可以通过提供有效的表单名称来解决:
br.select_form(name='search_form')
而且,在尝试获取结果时,您将遇到问题 - 但这是另一个问题的一部分。