如何使用xpath提取解析href,src,alt

i need to find the image link and a href . show href,img src, and alt tag.

here my code

$xpath = new DOMXPath('http,://.....');


foreach ($xpath->query('//a[@href]//img') as $img) {


echo '<a href=' .'"' .$img['href'] .'"' .'/>' .'<img src="' .$img['src']    .'"' .'alt="' .$img['alt'] .'"/>' .'</a>';



Catchable fatal error: Argument 1 passed to DOMXPath::__construct() must be an     
instance of DOMDocument, string given, called in

Can you help me??

php
duanjiyun7391
duanjiyun7391 供参考:如何在PHP中解析和处理HTML/XML?
大约 4 年之前 回复
dousuitang5239
dousuitang5239 首先加载DOMDocument,然后使用DOMXpath,你不能直接转储url
大约 4 年之前 回复

1个回答

You can use the following code

$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTMLFile('http://example.com/');

$xpath = new DOMXpath($dom);

then use xpath to do whatever you want to do with it

Edited to get image src from link

# get the images inside a link
foreach ($xpath->query('//a[@href]//img') as $img) {

    # find all the links and images       
    for ($link = $img; $link->tagName !== 'a'; $link = $link->parentNode);

    $output[] = array(
        'href' => $link->getAttribute('href'),
        'src'  => $img->getAttribute('src'),
        'alt'  => $img->getAttribute('alt'),
    );
}
dsiy62758
dsiy62758 修改我的答案以满足您的要求,我认为答案为时已晚,但它可能会帮助其他人
大约 4 年之前 回复
douxianwu2221
douxianwu2221 空白,我无法显示回声'<a href='.'"'.$img['href'] .'"'.'/>'。'<img src =“'。$ img ['src' ]。'''。'alt =“'。$ img ['alt']。'”/>'。'</a>';
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问