You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Goutte同时筛选图片(img)和链接(a)标签?

解决Goutte同时筛选img和a标签的问题

问题出在filter()方法的使用逻辑上:Goutte的filter()仅接受单个CSS选择器字符串作为参数,你传入两个独立参数时,第二个参数会被直接忽略,因此只返回了img标签的结果。

要同时选中img和a标签,需遵循CSS选择器的多选语法,把两个选择器用逗号合并成一个字符串传入filter()即可。

修改后的代码示例:

use Goutte\Client;

$client = new Client();
$url = 'https://edition.cnn.com/';
$page = $client->request('GET', $url);

// 合并选择器,一次性筛选img和a标签
$page->filter('img, a')->each(function ($item) use ($url) {
    dump($item->getNode(0));
});

执行这段代码后,就能遍历并输出页面中所有的img和a标签节点了。

内容的提问来源于stack exchange,提问作者Nabil Farhan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 10:14:50