◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
如何用 scrapy xpath 获取指定标签下的完整 html 内容?
给定以下 html 片段:
<div class="contson"> 这是文本 <p>aaaa</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p> 这是文本2 <br> 这是文本3 </div>
我们希望获取 div.contson 中的所有内容,包括 html 标签。
'这是文本<p>aaaa</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p>这是文本2<br>这是文本3'
通常方法,如 string(.),只能获取纯文本。然而,node() 函数可以获取指定元素下的所有节点、元素和内容。
使用以下 xpath 表达式:
xx.xpath('//div[@class="contson"]/node()').extract()
然后将列表转换为字符串:
"".join(xx)
即可得到所需的完整 html 内容。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。