Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用casperjs下载没有url的文件_Javascript_Download_Event Handling_Casperjs - Fatal编程技术网

Javascript 如何使用casperjs下载没有url的文件

Javascript 如何使用casperjs下载没有url的文件,javascript,download,event-handling,casperjs,Javascript,Download,Event Handling,Casperjs,我试图使用casperjs下载一个csv文件,但是我得到了html页面的代码 我找不到事件处理程序,所以我不知道如何获取该文件!下面是html代码,显示了单击该代码时下载csv文件的图像。我在javascript文件中搜索,没有找到任何与此图像相关的内容(例如,单击图像时调用的函数) 如何下载该文件有什么帮助吗?非常感谢 首先,casper.download()将“String url”和“String target”作为其前两个参数。“String target”这里是您希望下载的资源的名称,

我试图使用casperjs下载一个csv文件,但是我得到了html页面的代码

我找不到事件处理程序,所以我不知道如何获取该文件!下面是html代码,显示了单击该代码时下载csv文件的图像。我在javascript文件中搜索,没有找到任何与此图像相关的内容(例如,单击图像时调用的函数)


如何下载该文件有什么帮助吗?非常感谢

首先,
casper.download()
将“String url”和“String target”作为其前两个参数。“String target”这里是您希望下载的资源的名称,而不是您希望下载到的位置,这就是我认为您解释它的原因,因为您使用fs.workingDirectory作为“字符串目标”的一部分。请参阅
casper.download()
的示例用法并仔细查看

此外,在您发布的html代码中,您似乎试图下载一个.png文件名csv.png,而不是实际的.csv文件,但这可能是我的误解。如果您试图下载.png文件,请使用
casper.captureSelector
,如图所示

我相信您正在尝试使用答案中的代码,所以我有最后一条建议让您的代码正常工作。似乎是您复制粘贴了代码,因此我必须确保:行
if(resource.url.indexOf('ExportData.csv')>-1){
仅在“ExportData.csv”实际上是您的资源名称时才起作用。请使用行
console.log(resource.header)
检查资源的名称。该名称也应是您的“字符串目标”

我希望这有帮助

<p align=right>
<input type="image" name="ctl00$ExportCSV" id="ctl00_ExportCSV" title="Export data to CSV file" src="images/csv.png" style="border-width:0px;" />
</p>
casper.on('resource.received', function(resource) {
   if (resource.stage !== "end") {
      console.log("resource.stage !== 'end'");
      return;
   }
   if (resource.url.indexOf('ExportData.csv') > -1) {
      console.log("Downloading csv file");
      var fs = require('fs');
      casper.download(resource.url, fs.workingDirectory+'/ExportData.csv');
   }
});