我有一个html按钮:
strings SomeFile.RAW | grep -i date
我尝试使用此代码点击此按钮
<button align="center" id="btnApply" width = "100" type="button" value="Apply" style="width:100px" onClick='Submit(1,getElement("btnApply"));'>
但是我收到了这个错误:
br.submit(label='Apply',id='btnApply')
答案 0 :(得分:1)
由于该按钮附加了JavaScript事件,因此mechanize
无法真正帮助您。它主要是一个HTML解析器,对链接和填写表单有一些额外的支持。但它无法解释JavaScript,并且通常不会在该网站上运行任何内容。
如果您正在寻找可以在支持JavaScript的网站上完全模仿浏览器行为的内容,那么您应该查看无头浏览器。这基本上是没有“视觉”部分的浏览器。例如,您可以使用PhantomJS并使用Selenium运行测试。
否则,如果您不是在考虑测试,而只是想要通过一个请求,那么您应该仔细调查该网站并找出Submit(1,getElement("btnApply"))
代码的作用。然后模拟并直接将请求发送到服务器 - 您甚至不需要mechanize
,但可能只需要执行正常的HTTP请求(例如在标准库中使用urllib或requests
)。 / p>