【发布时间】:2016-01-29 10:08:03
【问题描述】:
需要使用 Python 从site 下载文件。 文件列表是用JS函数生成的。
//<![CDATA[
$(document).ready(function(){
var url='/portalfront/portal/list/list-files.php';
var data={paths:'/portalfront/nedlast/no/markets/analyser-rapporter/norske/anbefalte-aksjer/|usename=Anbefalte aksjer|count=52'};
var myElement=Portal.getLocalizedString("PostError") || 'error';
jQuery.ajax({
url:url,
data:data,
dataType: "json",
success: function(jdata) {
if(jdata.status.match(/ok/i)){
myElement='';
$.each(jdata.data, function(messageIndex, message) {
myElement+='<p class="moduleItemPdf"><a target="_blank" href="'+message['path']+'" class="moduleItem">'+message['date']+' '+message['name']+'</a></p>';
});
}
},
complete:function(xhr,status) {
var _id="div#"+"anbefalte-aksjer-arkiv";
$(_id).append(myElement);
if($(_id).closest('div#column_right').length==0){
var e=parseInt($(_id).height());
var _height=40+(0 * 20);
$(_id).closest('.moduleWhite').height(e+_height);
Portal.alignModulesVertically();
}
}
});
});
//]]>
问题是我对 JS 不熟悉。 我想我必须使用 Selenium 来完成这项任务,我认为它应该像这样:
url = 'https://www.dnb.no/bedrift/markets/analyser/arkiv/anbefalteaksjer.html'
wd = webdriver.Firefox()
wd.get(url)
links_script = wd.execute_script(js script)
- 我应该在函数中添加什么?
- 我应该得到什么?会是html吗?
- 如何下载此文件?我的意思是我如何才能收到它的链接?
【问题讨论】: