加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – Nokogiri如何处理未封闭的HTML标签?

发布时间:2020-12-17 03:20:38 所属栏目:百科 来源:网络整理
导读:解析 HTML文档时,Nokogiri如何处理 br标签?假设我们的文档看起来像这样: div Hi br How are you? br/div Nokogiri知道 br标签是特殊的,不仅仅是常规的XML标签,在解析节点源时忽略它们?我认为Nokogiri很聪明,但我想在接受这个涉及抓取HTML4网站的项目之前
解析 HTML文档时,Nokogiri如何处理< br>标签?假设我们的文档看起来像这样:

<div>
   Hi <br>
   How are you? <br>
</div>

Nokogiri知道< br>标签是特殊的,不仅仅是常规的XML标签,在解析节点源时忽略它们?我认为Nokogiri很聪明,但我想在接受这个涉及抓取HTML4网站的项目之前确定一下.你知道我的意思(你好吗?不是第一个< br>的内容,就像在XML中一样).

解决方法

您必须使用HTML解析器解析此片段,因为这显然不是有效的XML.使用HTML时,Nokogiri会按照您的预期行事:

require 'nokogiri'

doc = Nokogiri::HTML(<<-EOS
<div>
   Hi <br>
   How are you? <br>
</div>
EOS
)

doc.xpath("//br").each{ |e| puts e }

版画

<br>
<br>

Mechanize基于Nokogiri进行网络抓取,所以它非常适合这项任务.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读