-2

それが可能かどうかはわかりません。このような非常に多くの<iframe>タグ(youtube、facebookなどのビデオ埋め込み)を持つWebページがあります

<iframe src="https://www.facebook.com/video/embed?video_id=483633655049394"
width="680" height="450" frameborder="0"></iframe>

<iframe width="680" height="450" src="http://www.youtube.com/embed/XpEnFZGkK8A
frameborder="0" allowfullscreen=""></iframe>

私は次のことをしたい

Web ページの URL を指定すると、すべての<iframe> ... </iframe>タグが返されます。

どうすればphpでそれを行うことができますか.

4

1 に答える 1

2

ここでは xpath は必要ありません。使用できますDOMDocument::getElementsByTagName('iframe');。質問の下の@Bamarのコメントを確認してください(thx)。xpath を使用せずに DOM を使用すると高速になると思います。

ただし、参照用に元の xpath の回答を保持します。


元の答え

次の xpath クエリを使用します。

//iframe

<iframe>ドキュメント ツリー内の位置に関係なく、ドキュメント内のすべてのタグが選択されます。

例:

$doc = new DOMDocument();
$doc->loadHTML($yourhtml);

$selector = new DOMXPath($doc);

foreach($selector->query('//iframe') as $iframe) {
    echo $iframe->getAttribute('src');
}
于 2013-07-02T07:41:11.047 に答える