我正在使用node.js和zombie.js废弃网站。我正面临一个问题,在一个文件中,我有一个锚,其中包含下载pdf文件的链接。 如果我使用browser.clickLink()函数单击它,我在控制台中得到的结果超出了我的理解。有没有办法保存这个pdf文件,并在PHP中有它的链接?我想保存它以便进一步处理。这是我的测试js代码
var http = require('http');
var browser = require('zombie');
var assert = require('assert');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
//res.setHeader('Content-Type', 'text/plain');
//res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
var url = 'http://localhost/Node/HM_LandRegistry/downloadPdf.html'
browser.visit(url, function(error,browser) {
//browser.dump();
//console.log('browser.text (".link")', browser.text(".link"));
browser.clickLink("a.link");
browser.wait().then(function(){
console.log(browser.text());
browser.dump();
});
});

答案 0 :(得分:0)
以下是我在Google群组中发现的内容。它解决了我的问题。
function getLinks(browser) {
var links = browser.querySelectorAll('.link');
return Array.prototype.map.call(links, function(e) {
return e.getAttribute('href'); // returns an array. Use .toString() to get string only
});
}