43

ファイルシステムにファイルを作成し、その内容をその中に配置するにはどうすればよいthis.getPageContent()ですか?

4

4 に答える 4

70
var fs = require('fs');
fs.write(myfile, myData, 'w');

毎日のこすりを保存するために私は:

var currentTime = new Date();
var month = currentTime.getMonth() + 1;
var day = currentTime.getDate();
var year = currentTime.getFullYear();
var myfile = "data-"+year + "-" + month + "-" + day+".html";
于 2012-10-11T18:28:41.780 に答える
6

この機能を casper オブジェクトに追加するために使用できるヘルパー関数を次に示します。

/**
 * Save page markup to a file. Respect an existing savePageContent function, if
 * casper.js core introduces one.
 * 
 * @param String targetFile
 *   A target filename.
 * @return Casper
 */
casper.savePageContent = casper.savePageContent || function(targetFile) {
  var fs = require('fs');
  var f  = require('utils').format;

  // Get the absolute path.
  targetFile = fs.absolute(targetFile);
  // Let other code modify the path.
  targetFile = this.filter('page.target_filename', targetFile) || targetFile;
  this.log(f("Saving page html to %s", targetFile), "debug");
  // Try saving the file.
  try {
    fs.write(targetFile, this.getPageContent(), 'w');
  } catch(err) {
    this.log(f("Failed to save page html to %s; please check permissions", targetFile), "error");
    this.log(err, "debug");
    return this;
  }

  this.log(f("Page html saved to %s", targetFile), "info");
  // Trigger the page.saved event.
  this.emit('page.saved', targetFile);

  return this;
};

この場合の「fs」は Node JS FileSystem オブジェクトではなく、PhantomJS モジュールであることに注意してください。

于 2014-03-04T20:19:49.750 に答える