gpt4 book ai didi

casperjs - 从 Evaluate CasperJS 中发出事件

转载 作者:行者123 更新时间:2023-12-02 02:53:52 26 4
gpt4 key购买 nike

我在删除网站时从创建的 URL 下载文件时遇到问题。目前我发现了一个文件的月份和年份,然后替换了 url 中的值并尝试从该位置下载。我了解到您无法使用评估范围内的下载功能。

this.evaluate(function collectAllData (MONTHS) {
for (...) {
// Create url from page information ...
casper.emit('test.download', url, fileName);
}
}, MONTHS);

casper.on('remote.download', function processRemoteDownload(url, fileName) {
this.download(url, fileName);
});

无论如何,是否可以从评估中发出自定义事件?我不想离开我所在的当前页面,也不想在评估范围内来回切换。我知道我可以返回一个 url 列表并在事后处理它们,但很好奇这是否可能。感谢您的帮助。

最佳答案

evaluate 回调中使用:

console.log("casper-event:add:[1234]");

然后可以这样做(未测试):

casper.on('remote.message', function(msg) {
if(msg.indexOf("casper-event:" == 0))
{
var event = msg.replace(/^casper-event:/, '').replace(/:.*$/, '');
var result = JSON.parse(msg.replace(/^casper-event:.*?:/, ''));
this.emit(event, result);
}
})

casper.on('add'........

关于casperjs - 从 Evaluate CasperJS 中发出事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17683574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com