phantomjs – casperjs下载csv文件

前端之家收集整理的这篇文章主要介绍了phantomjs – casperjs下载csv文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用以下代码站点下载csv文件(广告报告).问题是,它将下载 HTML页面而不是csv文件.我不能给你的URL,因为它在登录后面,但类似的情况下,从下面的URL下载Firefox

http://www.mozilla.org/en-US/firefox/new/

这是一个GET请求,当我检查元素网络选项卡时,获取请求被取消.我是新来的Casper,不知道如何处理这样的请求.任何帮助将不胜感激

  1. casper.then(function() {
  2. var downloadURL = "";
  3.  
  4. this.evaluate(function() {
  5. var downloadURL = "http://www.lijit.com"+jQuery("#dailyCSV").attr('href');
  6. });
  7.  
  8. this.download(downloadURL,'/Users/Ujwal/Downloads/caspertests/stats.csv');
  9. });

回应标题

  1. Age:0
  2. Cache-Control:max-age=0
  3. Connection:keep-alive
  4. Content-Disposition:attachment; filename=stats.csv
  5. Content-Encoding:gzip
  6. Content-Length:1634
  7. Content-Type:text/x-csv
  8. Date:Sat,05 Oct 2013 15:28:21 GMT
  9. Expires:Sat,05 Oct 2013 15:28:21 GMT
  10. P3P:CP="CUR ADM OUR NOR STA NID"
  11. Server:PWS/8.0.16
  12. Vary:Accept-Encoding
  13. X-Px:ms h0-s28.p9-jfk ( h0-s62.p9-jfk),ms h0-s62.p9-jfk ( origin>CONN)

解决方法

回答我自己的问题,这里是解决方

参考:https://github.com/knorrium/google-books-downloader/blob/master/gbd.js

  1. //Download the daily csv
  2. casper.then(function() {
  3. this.click('#dailyCSV');
  4. });
  5.  
  6. casper.on('resource.received',function (resource) {
  7. "use strict";
  8. if ((resource.url.indexOf("publisherCSV/?startDate=") !== -1) ) {
  9. this.echo(resource.url);
  10. var url,file;
  11. url = resource.url;
  12. file = "stats.csv";
  13. try {
  14. this.echo("Attempting to download file " + file);
  15. var fs = require('fs');
  16. casper.download(resource.url,fs.workingDirectory+'/'+file);
  17. } catch (e) {
  18. this.echo(e);
  19. }
  20. }
  21. });

猜你在找的JavaScript相关文章