YiiFrameworkで書かれた特定のウェブサイトから特定のテレビチャンネルのスケジュールを取得できるphpスクリプトを作成しようとしています。php cURLを使用して完全なHTMLを取得しようとしていますが、このセクションが見つかりません。
$curl = curl_init('http://port.hu/tv');
curl_setopt ($curl, CURLOPT_POSTFIELDS, 'id=tvchannel-3&date=2017-02-05'); // for example
curl_setopt($curl, CURLOPT_FAILONERROR, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POST, 1);
$content = curl_exec($curl);
echo $content;
以前にphpfile_get_contentsで試したところ、同じ結果になりました。何か案が?ありがとう。
Webサイトがajax(おそらく)を使用してデータをページにロードしているように見えるため、Webサイトページから直接スクレイプすることはできません。そこで、Chrome Developer Toolsを使用してページのネットワークアクティビティを監視すると、次のAPIURLが見つかりました。
http://port.hu/tvapi?channel_id=tvchannel-3&i_datetime_from=2017-02-05&i_datetime_to=2017-02-10
JSON文字列を返し、開発者はAPIを保護していません。したがって、もうスクレイピングする必要はありません。JSONAPIを直接ロードするだけです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加