0

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 が原因だと思います。

4

0 に答える 0