使用Python单击类型为javascript:void(0)的href以检索TAR文件

2022-07-05 00:00:00 python tar href javascript

我希望通过python从网站上检索一套TAR文件。 通常,链接的形式为:

< td > < a > href="javascript:void(0)" onClick="dlResp('tar','SHR')" >Click Here< /a >/< td >

我认为是javascript:void(0)出了问题。我还没有成功地使用browser.mechanise()或Selify PhantomJS检索TAR文件。有人能帮忙吗?

这必须作为后台进程运行,因此不能接受Firefox或Chrome等Web驱动程序。谢谢!


解决方案

该链接在单击时执行dlResp('tar', 'SHR')

如果我们查看您链接的页面的Java脚本,我们会发现函数定义:

function dlResp(resp,code){
   var url = './dlTxt.php?resp=' + resp + '&code=' + code;
   location.href = url;
}

这意味着您可以从URL下载tar文件,如下所示:http://www.fnet.bosai.go.jp/st_info/dlTxt.php?resp=tar&code=SHR

因此您需要解析onClick属性并检索此URL:

# Put the contents of the onClick attribute here
onclick = "dlResp('tar', 'SHR')"
url_template = "http://www.fnet.bosai.go.jp/st_info/dlTxt.php?resp={1}&code={3}"
url = url_template.format(*onclick.split("'"))
# Retrieve `url` using whatever library

相关文章