2017-03-01 4 views
0

のために言うようにロードするためにページを待ちます。サイトがコンテンツを表示する前に5秒間のブラウザチェックを待つ私のプログラムで
は、したがって、私は私のhttp.get(URL)関数は、少なくとも5秒間待ちたいです。 待たずに内容を表示しません。
ありがとうございます。あなたのコメントに基づいては、どのように5秒間言うようにページがロードされるのを待つためにどのように5秒間

+0

何を試しましたか? googleで検索しましたか? –

+0

はい、Googleで検索しました。私はそのような何かを探していますので、「waitload」がある指定されたtime.In Pythonのセレンを待つために、「タイムアウト」パラメータが、ありません「waitload」または「待機」パラメータがあります。 – user18233

答えて

0

は、私は今あなたがやろうとしているかを理解し、この答えを変更しました。

残念ながら、要求が応答を取得する前に開始された後、「待つ」こと(実際にサービス呼び出しを行うために requestを使用しています)流星HTTPを設定する方法はありません。あなたにとって最良のことは、PhantomJSをチェックすることです。それはあなたがページをロードし、レンダリングし、javascriptを介して動的に生成されたコンテンツにアクセスするために使用できるヘッドレスブラウザです。

answerについては、簡単なPhantomJSの例を参照してください。gadicohen:phantomjsパッケージを使用して流星のためにインストールすることができます。サイドノートでは

、まだ流星で実行を一時停止するには、以下の機能を使用することが有用であり得るが、もちろんこれは、あなたが解決しようとしている何のために有用ではありません。

Meteor._sleepForMs(5000); // pause execution for 5 seconds 
+0

私は、コンテンツをロードする5秒の初期待機時に、最初はそれだけで「5秒間待って...」と表示サイトをこすりしたいです。だから私がしたいのは、コンテンツをロードするために5秒間待つためにhttp.get()を呼び出すことです。 – user18233

+0

@ user18233説明をいただきありがとうございます。私は答えを更新して、これをどうやって正しい方向に向けるのかを指摘しています。 – jordanwillis

0

httpパッケージはnpmのリクエストパッケージに基づいて構築されています。 HTTP呼び出しのnpmOptionsパラメータにして、同期

var request = require('request'); 
var reqOptions = { 
    url: path, 
    method: 'GET', 
    encoding: "utf8", 
    jar: false, 
    timeout: null, 
    body: null, 
    followRedirect: null, 
    followAllRedirects: null, 
    headers: {}, 
    time:true 
}; 
request(reqOptions, function(error, response, body) { 
    console.log("time: "+response.elapsedTime) 
    console.log(body.toString()); //res.content returned by http.get 
}); 
require('sleep').sleep(5); //synchronously slowing execution 

あなたはまた、設定することで、同様のことを行うことができるかもしれない{真の時間を:}あなたは直接リクエストパッケージにそのように行うことができます

関連する問題