没有数据通过CasperJS ajax发送

时间:2018-04-03 15:14:00

标签: web-scraping phantomjs casperjs

我正在研究Casper JS网络报废,现在我已从网站上取消了标题。我正在向php文件发出ajax请求,我正在通过帖子收集数据,但是当响应状态为200 and OK时,数据没有通过它发送,我不知道导致问题的原因。

其余数据已成功插入表格,但不是标题。



var casper = require('casper').create();

casper.start("https://www.google.com/");
casper.then(function(){
  var data = this.evaluate(function(){
    var title = document.getElementsByTagName('title')[0].textContent;
    return title;
  })
  console.log(data);
  casper.thenOpen("http://localhost/fiverr/Crawl%20The%20Jobs/modal_scripts.php",{method:"POST",data:data+"&crawled_jobs=true"}).then(function(res){
    console.log(res.status);
  })
})

casper.run();




PHP脚本,我正在收集数据:



if (isset($_POST["crawled_jobs"])) {

  $title = $_POST["data"];
  $jobs_list_insert = "INSERT INTO jobs VALUES(null,'$title','nady','ahmad','kahn','yess','yesss')";
  $con->query($jobs_list_insert);


}




1 个答案:

答案 0 :(得分:0)

找到解决方案:



var i = 0;
console.log("Data Length : " + d.length);

function sendData(i) {
  console.log("Posting Data...");

  casper.thenOpen("http://localhost/fiverr/Crawl%20The%20Jobs/modal_scripts.php", {
    method: "POST",
    data: "title=" + d[i].title + "&loc=" + d[i].loc + "&day=" + d[i].day + "&salary=" + d[i].salary + "&link=" + d[i].link + "&logo=" + d[i].compLogo + "&crawled_jobs=true",
    async: false
  }).then(function(res) {
    console.log(res.status);
    sendData(i + 1);
  })

}

sendData(i);