0

jQueryを含むphantomjs自動化スクリプトを書いています。

簡潔にしようと思います。

最初-ページの読み込み

バージョン1:

page.includeJs("http://............../1.9.0/jquery.min.js", function() {
  page.open(urlDecoded, function (status) {
    page.evaluate(fChecker, params);
  });
});

バージョン2

page.open(urlDecoded, function (status) {
  page.includeJs("http://............../1.9.0/jquery.min.js", function() {
    page.evaluate(fChecker, params);
  });
});

バージョン3

page.open(urlDecoded, function (status) {
  page.evaluate(fChecker, params);
});

2番目-評価

バージョン1および2の場合:

function fChecker(params) {
  ...
  ...
  $('.blabla').val('yes');
}

バージョン3の場合:

function fChecker(params) {
  var jq = document.createElement('script');
  jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js";
  document.getElementsByTagName('head')[0].appendChild(jq);
  ...
  ...
  $('.blabla').val('yes');
}

最後-結果

$は認識されません。jQueryは認識されません。

評価後にHTMLコンテンツを保存し、自動化されたページ内にスクリプトを表示します。これにより、ファイルが正しく追加されます。

まったく同じアプローチ(バージョン2)は、他の2つのサイトでもすでに機能しており、すべて問題ありません。

後で別の評価関数を使用すると(評価および分析されたページを送信するためだけに)正常に機能します。

何か案は?

ありがとうございました。

PS。私はサイト上のすべてのアイテムを検索しました。トピックは重複ではありません。

4

0 に答える 0