Прежде всего, я хотел бы заявить, что я знаю, что это старый вопрос, но я сталкивался с ним несколько раз при поиске решений для завитков и думаю, что это будет полезно для других людей, ищущих этот ответ.
Уточнение вопроса
Насколько я понимаю, вы можете видеть рамку, но не можете видеть содержимое рамки, потому что атрибут src рамки является относительным.Вы также хотите следовать кадру через php curl.
Пример кода
<?php
// Simple curl function
function get_page($url){
$msg = "";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$html = curl_exec($ch);
if (!curl_errno($ch)) {
$msg = $html;
} else {
$msg = 'Curl error: ' . curl_error($ch);
}
curl_close($ch);
return $msg;
}
// Desired domain
$domain = "http://www.w3schools.com";
$page_content = get_page("$domain/tags/tryit.asp?filename=tryhtml_iframe");
// Display fetched page
var_dump($page_content);
// Navigate dom to iframe in question
$xml = new DOMDocument();
@$xml->loadHTML($page_content);
$path = new DOMXPath($xml);
$forms = $path->query("//iframe[@id='iframeResult']");
$relative_uri = "";
foreach ($forms as $form) {
// Should be only 1 result
if (strtolower($form->getAttribute('id')) === strtolower("iframeResult")) {
$relative_uri = $form->getAttribute('src');
}
}
// Display fetched iframe
$page_content = get_page("$domain/tags/$relative_uri");
var_dump($page_content);
?>
Примечания к примеру
IВыберите www.w3schools.com, потому что я предполагаю, что их пример не изменится через некоторое время и, вероятно, будет лучше работать, чем некоторые случайно выбранные веб-сайты.
Я также хотел бы заявить, что правильный примерсама рамка на сайте w3schools - это относительная рамка, а не пример кадра, который они показывают!Ищите себя, ища iframeResult
в инспекторе элементов.
Пример выполнения
Страница для навигации
http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_iframe
Пример php curl навигации по странице
http://ipatenco.com/example/curl-iframe.php