重複の可能性:
PHP で HTML を解析および処理する方法は?
さまざまな製品のプレゼンテーションを使用して Web サイトを構築していますが、curl を使用していくつかの問題に直面しています。基本的に、さまざまな Web サイトから HTML の一部を取得し、Web サイトに表示する必要があります。例: タイトル、モデル、説明、ユーザーレビューなど....私はいくつかのコードを達成することができましたが、ソースURLを変更すると機能しなくなります...ソースでさえ私のコードと同じです:
$url = "http://www.tigerdirect.com/applications/SearchTools/item-details.asp?EdpNo=2819129&CatId=4938";
//$url = "http://www.tigerdirect.com/applications/SearchTools/item-details.asp?EdpNo=1808177&csid=_61"; //this one is not working....
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
$source = curl_exec ($ch);
$start_description1 = "</tr>
</tbody>
</table>
<p>";
$end_description1 = "</div>
</div>
<div id=\"Videos\" style=\"display:inline;\">";
$description1_start_pos = strpos($source, $start_description1) + strlen($start_description1);
$description1_end_pos = strpos($source, $end_description1) - $description1_start_pos;
$description1 = substr($source, $description1_start_pos, $description1_end_pos);
echo $description1;
それは完全に機能しますが、URLを変更すると機能しません...問題はstart_description htmlコードです...他のページではhtmlコードが異なります...
それ以外の:
</tr>
</tbody>
</table>
<p>
新しいページには:
</tr>
</tbody>
</table>
<p>
また:
</tr>
</tbody>
</table>
<p>
どうすればこのエラーを回避できますか? またはcUrlエラーを回避し、必要なコンテンツを取得するにはどうすればよいですか?
ありがとう!