我可以运行一个javascript代码,有时它会产生输出,有时它不会。如果我等待5-20分钟,我可以回去而不改变任何东西,它会起作用。直到我离开并返回然后什么也没有。这与firefox,IE和chrome相同。我正在做一个相当简单的get.elementsByClassName,然后是控制台日志。有时它会产生,有时却不产生。我正试图从sonicwall的演示防火墙页面抓取数据。 https://realtime.demo.sonicwall.com/main.html
var els = document.getElementsByClassName ('swlTabContainer
swlTblContainer');
var csvString = [];
for(i=0;i<els.length;i++)
{
csvString = els[i].innerText;
console.log(els[i].innerText);
}
var pom = document.createElement('a');
var csvContent=csvString; //here we load our csv data
var blob = new Blob([csvContent],{type: 'text/csv;charset=utf-8;'});
var url = URL.createObjectURL(blob);
pom.href = url;
pom.setAttribute('download', 'addgrp.csv');
pom.click();
只是看看你提供的页面,它看起来似乎加载得相当慢。
也许这是一个尝试同步刮取Web数据的问题,一旦页面加载后与回调函数异步执行。
也许看看load event reference上的mdn页面:
<script>
window.addEventListener("load", function(event) {
console.log("All resources finished loading!");
});
// scrape for your data
</script>