1
我想自动执行一个在我的服务器上使用Python在搜索栏中搜索关键词的过程。但是,首先搜索返回免责声明并且一旦接受,实际显示结果。免责声明网站如下:使用Python单击网站按钮
http://emma.msrb.org/Disclaimer.aspx
我已经检查了网站,这是我的初步代码:
browser = RoboBrowser(history=True)
browser.open(tradeinfo)
# tradeinfo = link to search result, i.e. http://emma.msrb.org/SecurityDetails/TradeActivity/ABF6AA894523779EDC8B751EB99959934
form = browser.get_forms()[0]
print form
<RoboForm __VIEWSTATE=somevalue, __VIEWSTATEGENERATOR=somevalue, __EVENTVALIDATION=somevalue,
ctl00$Masthead$UserAcct1$NextAction=,
ctl00$Masthead$UserAcct1$isPilotUser=False, ctl00$Masthead$searchTextBox=Enter CUSIP or Name,
ctl00$Masthead$headerSearchButton=,
ctl00$mainContentArea$disclaimerContent$yesButton=,
ctl00$mainContentArea$disclaimerContent$noButton=>
# Somevalue represents a string of characters (deleted for visual clarity)
然后我执行以下操作:
form['ctl00$mainContentArea$disclaimerContent$yesButton'].value ='Yes'
browser.submit_form(form)
browser.select('body')
但身体仍然不包含数据。我也尝试机械化,结果相同。有没有办法做到这一点,没有硒,只使用机械化或RoboBrowser?如果是这样,我在脚本中错过了什么?
PS:在 “接受” 按钮,HTML脚本:
<input type="image"
name="ctl00$mainContentArea$disclaimerContent$yesButton"
id="ctl00_mainContentArea_disclaimerContent_yesButton"
data-jquerymobilestyle="false"
src="images/btnAccept.gif" alt="Accept" style="border-width:0px;">
我可以问你为什么不想使用Selenium? – marcusshep
Selenium需要一个Firefox窗口(无论是在屏幕上还是无头),两者目前都不能在我有的Unix服务器上工作。所以我需要找到另一种方式。 – chizze