Scrapy 选择器没有抓取元素中的全文

Scrapy selectors are not grabing the full text in an element

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

要获取全文,您必须调用.getall()方法

response.css('.main-l::text').getall()

由 scrapy 证明 shell

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'