casperjs скачать csv файл
Я пытаюсь загрузить csv-файл (отчет о рекламе) с сайта, используя приведенный ниже код. Проблема в том, что он будет загружать HTML-страницу, а не csv-файл. Я не могу дать вам URL, так как он находится за логином, но это похожий случай, когда вы загружаете Firefox с нижеприведенного URL
Http://www.mozilla.org/en-US/firefox/new/
Это запрос GET, и когда я проверяю вкладку element Network, запрос get отменяется. Я новичок в Каспере и не знаю, как с ним обращаться. подобный запрос. Любая помощь будет признательна
casper.then(function() {
var downloadURL = "";
this.evaluate(function() {
var downloadURL = "http://www.lijit.com"+jQuery("#dailyCSV").attr('href');
});
this.download(downloadURL, '/Users/Ujwal/Downloads/caspertests/stats.csv');
});
Заголовок Ответа
Age:0
Cache-Control:max-age=0
Connection:keep-alive
Content-Disposition:attachment; filename=stats.csv
Content-Encoding:gzip
Content-Length:1634
Content-Type:text/x-csv
Date:Sat, 05 Oct 2013 15:28:21 GMT
Expires:Sat, 05 Oct 2013 15:28:21 GMT
P3P:CP="CUR ADM OUR NOR STA NID"
Server:PWS/8.0.16
Vary:Accept-Encoding
X-Px:ms h0-s28.p9-jfk ( h0-s62.p9-jfk), ms h0-s62.p9-jfk ( origin>CONN)
1 ответ:
Ответил на мой собственный вопрос, вот решение
Ссылка: https://github.com/knorrium/google-books-downloader/blob/master/gbd.js
//Download the daily csv casper.then(function() { this.click('#dailyCSV'); }); casper.on('resource.received', function (resource) { "use strict"; if ((resource.url.indexOf("publisherCSV/?startDate=") !== -1) ) { this.echo(resource.url); var url, file; url = resource.url; file = "stats.csv"; try { this.echo("Attempting to download file " + file); var fs = require('fs'); casper.download(resource.url, fs.workingDirectory+'/'+file); } catch (e) { this.echo(e); } } });