我有一个列表中的网络链接列表。我想转到列表中的每个链接,并从打开的网站下载一个文件,这是打开的页面上的另一个链接,并启用了javascript!在
网络链接列表如下:
['"http://www.energychoice.ohio.gov/ApplesToApplesComparision.aspx?Category=Electric&TerritoryId=2&RateCode=1"', ]
列表中还有更多类似于所示的链接。在
我需要去每一个链接,将打开一个网站,那将有下载文件“导出到XML”。此链接已启用javascript。在
我是Python的新手。我用的是ubuntu 2.7。在
任何帮助都将不胜感激!在
查看文件下载的链接内容:
<a id="ctl00_ContentPlaceHolder1_lnkExportToExcel" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$lnkExportToExcel','')">Export offers to XML</a>
这里是\u doPostBack()js函数。<script type="text/javascript"> //<![CDATA[ var theForm = document.forms['aspnetForm']; if (!theForm) { theForm = document.aspnetForm; } function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); } } //]]> </script>
显然函数提交了一个表单。表单id是aspnetForm。在我在代码中也发现了这个表单:
<form method="post" action="ApplesToApplesComparision.aspx?Category=Electric&TerritoryId=2&RateCode=1" id="aspnetForm"> <div class="aspNetHidden"> <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="qqEqj+MJZCXWWypTsbeT2OudaHSwkSmxn4MMtBuWopgD50psDlTzoVSH0gMVRNktX7EW7I2uWKnF9IzD8/BkloDdz+4OSdWS7MbiJaQ2KVBHoZCFqMN0IgLe82fkuPJxk/wf1h/ZWYjOwi5XRTLZEy4JKRc...
我建议您在python中模拟一个表单,它已经用来自所需链接的参数加载,尤其是从一个被刮取的页面的实际形式加载了参数
__VIEWSTATE
。请参阅下面的快照,其中包含单击链接和以下表单提交的重要信息:相关问题 更多 >
编程相关推荐