Goutte / 爬虫正则表达式查找动态 id
Goutte / crawler regex to find dynamic id
我正在尝试抓取一个有点乱的页面——我知道我需要三个 ID,但不同的项目都具有相同的 ID,即 "name","desc",他们有一个随机的(对我来说)数字。所以下面的代码适用于一个特定的项目,但不适用于任何其他项目。有没有一种方法可以使用正则表达式和 Goutte 进行过滤以获得我需要的东西?
$meta = $crawler->filter('#name_312 a')->each(function ($node) {
return [
'link' => $node->attr('href'),
];
});
您应该使用 css 而不是正则表达式。
例如:
"[id*=name]"
- 选择 id
.
中具有 name
的所有元素
"[id*=name] a, [id*=desc] a"
- 选择所有 a
元素的父元素 id
在其值中包含 name
或 desc
。
我正在尝试抓取一个有点乱的页面——我知道我需要三个 ID,但不同的项目都具有相同的 ID,即 "name","desc",他们有一个随机的(对我来说)数字。所以下面的代码适用于一个特定的项目,但不适用于任何其他项目。有没有一种方法可以使用正则表达式和 Goutte 进行过滤以获得我需要的东西?
$meta = $crawler->filter('#name_312 a')->each(function ($node) {
return [
'link' => $node->attr('href'),
];
});
您应该使用 css 而不是正则表达式。
例如:
"[id*=name]"
- 选择 id
.
name
的所有元素
"[id*=name] a, [id*=desc] a"
- 选择所有 a
元素的父元素 id
在其值中包含 name
或 desc
。