2

そのため、phantomjs を使用してページのソースを取得し、jquery を使用してそのソースを php ページに投稿して、さらに処理しようとしています。

これが私の最初のPHPページです

    <?php
$output = shell_exec("sudo /usr/local/bin/phantomjs --proxy=127.0.0.1:8118 --web-security=false ./test.js");
?>

そして、test.js を問題なく起動します。

Linux CentOS 64ビットでphantomjsを実行しています

以下は、gitハブページに移動したいTest.jsです。ロードしたら、ページを評価し、ページのhtmlを取得し、jQueryを挿入して競合がないことを確認し、そのページソースを投稿に送信します-put-or-get.php。

私はjqueryをテストしましたが、それは注入されており、基本的なdom操作が機能しています.gitハブページのフォントサイズなどを変更できます

post、put、get を試しましたが、Test.js ページのすべてが機能しますが、Jquery Ajax 呼び出しは機能しませんか?

非同期のオンとオフ、さまざまなコンテンツ タイプを試しましたが、何らかの理由で jQuery.ajax が無視されているようなものですか?

jqueryを捨てて、javascriptだけを使って投稿しようとしましたが、それでも何も投稿できませんか?

私は何かおかしなことをしていますか、それとも何かが壊れていて、修正する必要がありますか?

    var page = require('webpage').create();

page.onConsoleMessage = function(msg) {
    console.log(msg);

};
page.open("https://github.com/logxen/SmoothieBoard/tree/feature/5driver", function(status) {

    if ( status === "success" ) {

    page.evaluate(function() {
    data = document.body.innerHTML;
    console.log(data);


    page.injectJs('jquery-1.7.2.min.js');
    jQuery.noConflict();
    jQuery.ajax({
      type:'POST',
      async: false ,
      url:'post-put-or-get.php',
      contentType: 'application/x-www-form-urlencoded',
      data:'htmlsource='+data,
      success:function(datafeed) {
        if(datafeed) {
            console.log(datafeed);
        } else { 
            console.log("no joy"); 
        }
      }
   });


    });
    phantom.exit();

    }
});
4

0 に答える 0