casperjs问题下载csv文件

哈桑·阿米尔|

我正在尝试使用casperjs下载以下csv文件

var casper = require('casper').create({});
casper.start('http://69.50.252.196/');
casper.then(function(){
    this.download('http://69.50.252.196/download.csv', 'downloaded.csv');
});
casper.run(function() {
    this.exit();
});

download.csv

إختبار  Arabic
آزمایشی Persian
测试  Chinese
測試  Chinese
испытание   Russian
परीक्षा Hindi
δοκιμή  Greek, Modern (1453-)
테스트 Korean
טעסט    Yiddish
テスト Japanese
பரிட்சை Tamil

但是下载的文件总是损坏并且字符损坏

download.csv

"%.*('1 Arabic" 
"2E'ج4ج Persian
Kص  Chinese
,f  Chinese
8A?KB0=85   Russian
*0@M7> Hindi
´؟؛¹¼®  Greek"   Modern (1453-)"
"L¤¸    Korean" 
"طâلط   Yiddish"    
"ئ¹ب    Japanese"   
"ھ°؟ںحڑب    Tamil"  

请帮助,我不能使用child_process或wget或curl文件必须使用casperjs下载

哈桑·阿米尔|

经研究casperjs模块解决方案后发现!除处理二进制数据外,由于数据的base64encode而导致的问题

解决办法,直到修复:我删除了编码功能,并修改了wb至w的打开文件标志

老casper.js

fs.write(targetPath, cu.decode(this.base64encode(url, method, data)), 'wb');

新的casper.js

fs.write(targetPath, this.base64encode(url, method, data), 'w');

旧的clientutils.js

return this.encode(this.getBinary(url, method, data));

新的clientutils.js

return this.getBinary(url, method, data);

问候

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章