我正在从一系列类似的网页中收集一些数据,并将它们存储在Excel工作表中。我在python中使用urllib2中的opener类来完成这项工作。
问题是,在这些页面的一组中,您还需要单击超链接以显示所需的数据。
有什么方法可以伪造此超链接的点击并将其包含在我在python代码中发送的地址中?
这是链接的 href 标记:
<a href="#" onClick="refresh_reg_table();refresh_reg_list(); return false;">
以下是在 onClick 中调用的函数:
function refresh_reg_table(order){
Ajax.Responders.register({
onCreate: function() {
$('ajax_spinner2').show();
},
onComplete: function() {
$('ajax_spinner2').hide();
}
});
new Ajax.Updater('table_registrations', 'ajax/get_table_registrations.php', {
method: 'get',
parameters: {
table: 'registrations',
idevent : 143593,
sorted : order},
evalScripts: true,
});
}
function refresh_reg_list(){
Ajax.Responders.register({
onCreate: function() {
$('ajax_spinner2').show();
},
onComplete: function() {
$('ajax_spinner2').hide();
}
});
new Ajax.Updater('reg_list', 'ajax/get_list_registrations.php', {
method: 'get',
parameters: {
type: 'table_name_reg',
idevent : 143593
},
evalScripts: true,
});
}
通过地址栏,您所能做的就是使用 javascript:
前缀,它将在该前缀之后运行您的所有 JavaScript 代码javascript:
。
您最好更改超链接,例如:
<a href="javascript:refresh_reg_table();refresh_reg_list();">...</a>
使用javascript:yourFunction()
启动页面的功能 - 我认为没有其他解决方法