を使用して Web サイトからデータをスクレイピングする php スクリプトがありますfile_get_contents('http://remote_site.com/page.html')
。私が直面している唯一の問題は、すべてのデータがスクレイピングされて処理された後にのみデータが印刷されることです。スクリプトがスクラップとしてデータを取得する方法はありますprint
か?echo
質問する
494 次
2 に答える
0
リモートファイルを読み取っているときにバッファを操作(およびフラッシュ)したい場合は、 -コマンド(、など)file_get_contents
を使用することから、を処理できるようにするために切り替える必要があると思います。廃棄するときにコードを記述します。はリモートファイルのオフセットパラメータをサポートしていないため、結果を処理する前に、ファイルが完全に読み取られるまで待つ必要があります。f
fopen
fgets
flush
file_get_contents()
php.iniファイルで有効になっていることを確認するallow_url_fopen
必要がありますが、次のように記述できるはずです(ドキュメントから変更)。
$file = fopen ("http://www.example.com/", "r");
if (!$file) {
echo "<p>Unable to open remote file.\n";
exit;
}
ob_start();
while (!feof ($file)) {
$line = fgets ($file, 1024);
$buffer = $line;//you can manipulate what goes to the buffer here
echo $buffer;
ob_flush();
flush();
}
fclose($file);
私はまだテストしていないので、これをいじる必要があるかもしれませんが、それがあなたが取りたいアプローチだと思います。
于 2012-10-08T04:46:08.210 に答える
-2
Try
<?php
print '<pre>'.print_r($data, 1).'</pre>';
于 2012-10-08T04:30:58.997 に答える