用于JavaScript生成url的Python Web爬虫程序

2024-05-15 17:57:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用一些Python网络爬虫从一个网站下载大约3000个pdf文件。但是,这些pdf的url是由JavaScript函数生成的。所以,我想知道有没有关于如何实现这一点的教程?在

例如,链接到Alberto European Hairspray (Aerosol) - All Variants的URL将在单击onclick="javascript:__doPostBack('ctl00$placeBody$gridView$gridView','DocumentCenter.aspx?did={0}$0&#39后生成。 所以问题是如何让网络爬虫获得计算出的URL。在

function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
<tbody>
    <tr>
        <td>
            <input type="image" src="App_Graphics/PDFDocument.gif" alt="MSDS" onclick="javascript:__doPostBack(&#39;ctl00$placeBody$gridView$gridView&#39;,&#39;DocumentCenter.aspx?did={0}$0&#39;);return false;" />
        </td>
        <td><a href="javascript:__doPostBack(&#39;ctl00$placeBody$gridView$gridView&#39;,&#39;MSDSDetail.aspx?did={0}$0&#39;)">Alberto European Hairspray (Aerosol) - All Variants</a>
        </td>
        <td>Unilever PLC</td>
        <td>8131-01</td>
    </tr>
    <tr class="row-alternate">
        <td>
            <input type="image" src="App_Graphics/PDFDocument.gif" alt="MSDS" onclick="javascript:__doPostBack(&#39;ctl00$placeBody$gridView$gridView&#39;,&#39;DocumentCenter.aspx?did={0}$1&#39;);return false;" />
        </td>
        <td><a href="javascript:__doPostBack(&#39;ctl00$placeBody$gridView$gridView&#39;,&#39;MSDSDetail.aspx?did={0}$1&#39;)">Alberto European Mousse (Aerosol) - All Variants</a>
        </td>
        <td>Unilever PLC</td>
        <td>8132-01</td>
    </tr>
</tbody>

Tags: alljavascripttrtdeuropeanvariantsdidalberto