我在html文档中有这个元素
<div class="main-l"> <i class="icon icon-small icon-pin"></i> 65203 Wiesbaden</div>
尝试使用.css('.main-l::text').get()获取元素,只给予我部分文本:'\r\n ' .这是i元素之前的文本,如何获取全文或i元素之后的文本?
.css('.main-l::text').get()
'\r\n '
i
aiazj4mn1#
要获取全文,必须调用.getall()方法
.getall()
response.css('.main-l::text').getall()
用碎贝壳证明
In [1]: from scrapy.selector import Selector In [2]: %paste html=''' <div class="main-l"> <i class="icon icon-small icon-pin"></i> 65203 Wiesbaden</div> ''' ## -- End pasted text -- In [3]: response = Selector(text=html) In [4]: ...: ' '.join(response.css('.main-l::text').getall()).strip() Out[4]: '65203 Wiesbaden'
1条答案
按热度按时间aiazj4mn1#
要获取全文,必须调用
.getall()
方法用碎贝壳证明