首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xidel提取标记内的数据--原始输出

Xidel提取标记内的数据--原始输出
EN

Stack Overflow用户
提问于 2017-11-06 22:47:44
回答 2查看 953关注 0票数 2

很高兴成为StackOverflow的一员,一个长期潜伏在这里的人。

我需要解析两个标记之间的文本,到目前为止,我已经找到了一个很棒的工具,叫做Xidel

我需要解析中间的文本

代码语言:javascript
复制
<div class="description">
Text. <tag>Also tags.</tag> More text.
</div>

但是,所说的文本可以包括HTML标签在其中,我希望他们打印出来的原始格式。因此,使用如下命令:

代码语言:javascript
复制
xidel --xquery '//div[@class="description"]' file.html

让我明白:

代码语言:javascript
复制
Text. Also tags. More text.

我需要它保持原样,所以:

代码语言:javascript
复制
Text. <tag>Also tags.</tag> More text.

我如何才能做到这一点?

致敬,R

EN

回答 2

Stack Overflow用户

发布于 2017-11-07 02:23:27

可以通过几种方式使用Xidel来完成,这就是我如此喜欢它的原因。

HTML模板:

代码语言:javascript
复制
xidel -s file.html -e "<div class='description'>{inner-html()}</div>"

XPath:

代码语言:javascript
复制
xidel -s file.html -e "//div[@class='description']/inner-html()"

CSS:

代码语言:javascript
复制
xidel -s file.html -e "inner-html(css('div.description'))"

顺便说一句,在Linux上:将双引号替换为单引号,反之亦然。

票数 2
EN

Stack Overflow用户

发布于 2020-10-30 09:52:29

您可以通过添加--output-format=xml选项来显示标记。

代码语言:javascript
复制
xidel --xquery '//div[@class="description"]' --output-format=xml file.html 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47139536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档