Scrapy选择器未获取元素中的完整文本

nnvyjq4y  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(132)

我在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元素之后的文本?

aiazj4mn

aiazj4mn1#

要获取全文,必须调用.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'

相关问题