これはかなり単純だと思います。以下の関数を使用して、サイトの生のhtmlを取得して解析しています。テスト中に、stackoverflow.com でコードを実行することにしました。
HTML 応答を取得する代わりに、Chrome は実際のサイトを出力し、HTML を実際のサイトに割り当てます。私は何が欠けていますか?
function get_site_html($site_url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 4);
curl_setopt($ch, CURLOPT_FORBID_REUSE, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_URL, $site_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
global $base_url;
$base_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
$http_response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close ($ch);
return $response;
}
サイトの未加工の html を $response に割り当て、それを返す必要があります。