【问题标题】:How to save the downloadable file link in zombie.js如何在zombie.js中保存可下载的文件链接
【发布时间】:2018-03-21 18:35:29
【问题描述】:

我正在使用 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();
  });
});

【问题讨论】:

    标签: javascript node.js zombie.js


    【解决方案1】:

    这是我在 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
    });
    }
    

    Save the link

    【讨论】:

      猜你喜欢
      • 2020-09-16
      • 2013-11-20
      • 2016-09-09
      • 1970-01-01
      • 2010-09-26
      • 1970-01-01
      • 1970-01-01
      • 2012-03-01
      • 2019-01-14
      相关资源
      最近更新 更多