问题标签 [nokogiri]
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.
ruby - 如何通过 CSS 而不是 XPath 选择具有文本内容的元素?
“ Nokogiri:如何通过匹配文本来选择节点? ”可以通过 XPath 做到这一点,但是,我正在寻找一种使用与元素文本匹配的 CSS 选择的方法。
PyQuery 和 PHPQuery 可以做到这一点。Ruby 没有 jQuery API 库吗?
xpath - 从一组 xpath 中找到共同的祖先?
说我有
如何获得共同祖先?在这种情况下,span 将是“font, h1, b, div”的共同祖先将是“span”
xml - 获取 XSLT 当前节点,格式化为 XPath 查询?
我有以下代码块,可以获取树下节点的名称,如下所示:
section/page/subPage
但我希望能够将其归结为以下内容(只是弥补):
section[@id='someId']/page/subPage[@user='UserA']/@title
我从这些 StackOverflow 帖子之一中找到了以下代码:
p>这给了我一条直接的道路,但我想在它上面运行更多的逻辑来使它包含@id(或相关属性),也许还有一些我现在想不到的东西。
做这个的最好方式是什么?
我已经检查了 EXSLT 函数,这可能有效,但也许你们已经用更好的方法解决了这个问题。
有任何想法吗?
如果有帮助,我正在使用 ruby 的 nokogiri 来解析 xml/xslt。
非常感谢,兰斯
html - 使用 Ruby 从 HTML 文档中剥离文本
有很多例子说明如何使用 Ruby 从文档中去除 HTML 标签,Hpricot 和 Nokogiri 有 inner_text 方法,可以轻松快速地删除所有 HTML。
我想做的是相反的,从 HTML 文档中删除所有文本,只留下标签及其属性。
我考虑循环将文档设置 inner_html 设置为 nil 但实际上你必须反向执行此操作,因为第一个元素(根)具有整个文档其余部分的 inner_html,所以理想情况下我必须从最里面的元素,并将 inner_html 设置为 nil,同时向上移动通过祖先。
有谁知道有效地做到这一点的巧妙小技巧?我在想也许正则表达式可能会这样做,但可能不如 HTML 标记器/解析器那样有效。
xml - 使用 XSLT 转换 XML 并保留 CDATA(在 Ruby 中)
我正在尝试将具有以下内容的文档转换为另一个文档,使 CDATA 与第一个文档中的内容完全相同,但我还没有弄清楚如何使用 XSLT 保留 CDATA。
初始 XML:
最终的 XML:
我尝试过这样的事情,但没有运气,一切都变得混乱:
任何想法如何保存 CDATA?
谢谢!槊
使用红宝石/nokogiri
更新:这是可行的。
这会将所有 text() 节点包装在 CDATA 中,这可以满足我的需要,并且它将在文本中保留 html 标签。
ruby - 在 Nokogiri 的所有标签之间抓取文本?
在 html 标签之间获取所有文本的最有效方法是什么?
一堆被html标签包围的文本。
ruby - 将通过 html 标签包围的每个文本放入一个数组中?
使用nokogiri,
这可以完成工作,但是,它将所有内容都放在一个平面文本中。
我需要通过 html 标签获取每个文本
并将它们放入数组中。[“文本”,“文本 3”]
推荐的操作是什么?
我想过做
doc.xpath("*").text
但不知道如何遍历这一切。
ruby - 选择包含子节点内文本的父节点
基本上我想选择一个节点(div),它的子节点(h1,b,h3)包含指定的文本。
我期待,/html/div/ 不是 /html/div/h1
我在下面有这个,但不幸的是返回了孩子,而不是 div 的 xpath。
我期待,/html/div/ 不是 /html/div/h1
那么有没有办法简单地使用 xpath 语法来做到这一点?
ruby - 将latin1字符串转换为utf8?
如何将包含 latin1 字符的字符串转换为 utf8?
该字符串是一个文档,由 open-uri 打开并包含这些特殊字符。
此致