1

示例:在此域http://www.example.com/234234/go.html只有一个 iframe-code

如何在 iframe 代码中获取 url?

去.html:

<iframe style="width: 99%;height:80%;margin:0 auto;border:1px solid grey;" src="i want this url" scrolling="auto" id="iframe_content"></iframe>

我有这个片段,但它的编码很糟糕..

function downloadlink ($d_id)
  {
    $res = @get_url ('' . 'http://www.example.com/' . $d_id . '/go.html');
    $re = explode ('<iframe', $res);
    $re = explode ('src="', $re[1]);
    $re = explode ('"', $re[1]);
    $url = $re[0];
    return $url;
  } 

谢谢你!

4

2 回答 2

3

使用诸如simple_html_dom 之类的 html 解析器来解析 html。

$html = file_get_html('http://www.example.com/');

// Find all iframes
foreach($html->find('iframe') as $element)
   echo $element->src . '<br>';
于 2010-04-01T20:53:17.850 回答
2

我不知道你在这里有什么范围 - 只是那个片段,还是你正在浏览整个页面?

如果您正在浏览整个页面,您可以使用PHP Simple HTML DOM Parser。他们网站上的一个稍微修改的例子:

// Create DOM from URL or file
$html = file_get_html('http://www.google.com/');

// Find all iframes
foreach($html->find('iframe') as $element)
       echo $element->style . '<br>';

此示例代码遍历iframes页面上的所有内容,并输出它们的src属性。

PHP 也为此提供了内置函数(如SimpleXML),但我发现 DOM Parser 非常好用且易于处理(如您所见)。

于 2010-04-01T20:53:33.270 回答