问题标签 [domxpath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
5372 浏览

php - 使用默认命名空间绑定对 XML 进行 PHP xpath 查询

我有一个解决主题问题的方法,但这是一个 hack,我想知道是否有更好的方法来做到这一点。

下面是一个示例 XML 文件和一个 PHP CLI 脚本,它执行作为参数给出的 xpath 查询。对于这个测试用例,命令行是:

最奇怪的是这条线,没有它我的方法不起作用:

据我所知,这只是重新解析修改后的 XML,在我看来这不是必需的。

有没有更好的方法在 PHP 中对此 XML 执行 xpath 查询?


XML(注意默认命名空间的绑定):


PHP CLI 脚本:

0 投票
2 回答
4378 浏览

php - DOMXPath $html->query('//p[@class="myclass"]/a')->item(0); 不工作

DOMXPath$html->query('//p[@class="myclass"]/a')->item(0);不工作。

这是HTML:

为什么这棵树不工作?我打错了吗?

非常感谢您提前。

0 投票
3 回答
37146 浏览

php - DOMXpath - 获取 a 元素的 href 属性和文本值

所以我有一个这样的 HTML 字符串:

使用 XPath,我可以使用此 Xpath 查询获取 href 属性的值:

获取文本值更容易,如下所示:

现在我很想知道,我怎样才能将这两个查询结合起来,只用一个查询来获取两个值(如果它是这样的,甚至可能吗?)。

0 投票
3 回答
1775 浏览

php - 消除


使用 DOMxpath 还是正则表达式?

我使用 DOMxpath 删除具有空文本节点但保留<br/>标签的 html 标签,

在我遇到另一个问题之前它工作得很好,

如何去除这种凌乱的<br/><p>?这意味着我不想<br/>单独允许,<p>但我<br/>只允许像这样的适当文本,

那可能吗?

还是使用正则表达式更好?

我尝试过这样的事情,

但它返回此错误,

0 投票
2 回答
682 浏览

php -
如果之前或之后没有文字,我该如何删除?DOMxpath 还是正则表达式?

<br/>如果之前或之后没有文字,我该如何删除?

例如,

他们应该像这样重写,

我应该使用 DOMxpath 还是正则表达式会更好?

(注意:我之前有一篇关于使用<p><br/></p>DOMxpath 删除的帖子,然后我遇到了这个问题!)

编辑:

如果我在输入中有这个,

那么应该是

0 投票
1 回答
6963 浏览

php - php DomXPath - 如何从当前节点的父节点中选择子节点?

我有一个对我来说似乎很难的非常重要的问题.. 只是我需要从当前节点的父节点中选择子节点!我知道我们使用 (..) 来选择父节点。但就我而言,这还不够..这是我获取所有颜色值的 php 代码

请帮忙 ::

0 投票
2 回答
200 浏览

php - 如果 TD 不包含图像,如何忽略/继续?

continue;如果TD不包含图像,我需要。

我试过这个:

但这没有用。

我该怎么办?

0 投票
2 回答
3784 浏览

php - php DomXPath - 如何仅在当前节点而不是子节点中获取图像?

我只需要获取当前节点而不是子节点中的图像
我只想获取green/yellow/red/black没有图像的not_important.gif图像
我可以使用查询'.//table/tr/td/img'
但我需要它在循环中

我能做到吗?$query->item()->
我试过了,has_attributes但 我失败了::getElementsByTagNameNSgetElementById

0 投票
2 回答
2024 浏览

php - DOMXPath get sibling depending on previous sibling value

Let's say I have this:

Now, I want to get the baz value, which is coming right after bar with the value AAA (!but only with the value AAA!). I don't know how many "foo"s I have, so I can't exactly write something like:

So how can I get the value of the baz, which follows after bar with a particular value?

(For the example above, I would like to get sometext because it comes after AAA)

0 投票
0 回答
89 浏览

xpath - DOMDocument xpath 查询截止时间

有没有办法切断查询并返回结果..预设时间从给定的url获取所有图像..即查询网页的一半?或工作时间不超过 5 秒,因此,它会在 5 秒内完成所有工作......

我的 xpath 代码: