1

このページを配置する必要があります: http://www.tvindiretta.com/m/ iframe に。このページは cURL を利用しています。彼はそれの内容です。この URL を入れようとすると: http://www.tvindiretta.com/m/index.phpを iframe (タグ付き) に入れようとすると、ブラウザは iframe の URL にリダイレクトします。このページを iframe 内に保持するにはどうすればよいですか。ユーザー ユーザー エージェントを変更する必要があります。私はcURLの完全な初心者ですが、助けてください。彼は /m/index.php ページのソース コードです。

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://www.tvindiretta.com/");
curl_setopt($ch, CURLOPT_MAXREDIRS, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11 Safari/525.20'));

curl_exec($ch);
$result = curl_exec ($ch);
curl_close ($ch);

print $result;
curl_close($ch);
?> $
4

1 に答える 1

0

この Web ページにはユーザー エージェントのリダイレクトはないと思います。

<?php
if (isset($_GET['get'])){

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://www.tvindiretta.com/m");
    curl_setopt($ch,  CURLOPT_RETURNTRANSFER, TRUE);
    curl_exec($ch);
    $result = curl_exec ($ch);
    curl_close ($ch);
    print $result;

}
else{
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<iframe src="test.php?get" style="position:absolute; top:100px; left:100px; width:400px; height:400px;"/>
</body>
</html>
<?php } ?>

ページを台無しにしているように見えますが、とにかくモバイル コンテンツを提供してくれます。

したがって、ここでの本当の問題は、そのページ内の JavaScript コードにあると思います。

html5 には、iframe のコンテンツの動作を制限できる新しいiframe 属性「sandbox」があります。残念ながら、これは Chrome と Safari でのみサポートされているようです。

ここでのアイデアの 1 つは、Web ページのコンテンツをスクレイピングして (たとえば、PHP のDomDocumentを使用して)、関心のあるコンテンツのみを保持し、それらのスタイルを再現しようとすることです。言うよりも実行する方が簡単かもしれませんが、そうするためのよりクリーンな方法がわかりません。

テレビ番組に興味があるようですので、専用の xml スケーパーXMLtvをチェックしてみてください。

于 2012-11-25T12:02:32.553 に答える