www.site.com/search/all にアクセスする必要があるページがあり、www.site.com/page/2 3 4 ...などを使用できます。www.site.com/page/2 に直接アクセスすると、最初の URL (www.site.com/search/all) によって Cookie に保存されないため、何もありません。
すべてのページを実行してコンテンツを取得したいのですが、(www.site.com/search/all) から提供された最初のページからしかコンテンツを取得できません。
$context を作成し、 session_start() を使用して動作するかどうかを確認しましたが、成功しませんでした。
私のコードがあります:
<?php
require 'simple_html_dom.php';
$opts = array('http' => array('header'=> 'Cookie: ' . $_SERVER['HTTP_COOKIE']."\r\n"));
$context = stream_context_create($opts);
session_write_close(); // unlock the file
$f=10;
for($i=1;$i<=$f;$i++) {
if($i==1) {
$html = file_get_html('http://www.site.com/search/all',false,$context);
session_start();
}
else {
$html = file_get_html('http://www.site.com/page/$i',false,$context);
}
echo $i;
echo $html;
?>
$html の結果は常に最初のページからのもので、次のページに移動しません。Cookie が原因だと思います。