【发布时间】:2021-01-09 12:25:46
【问题描述】:
HTML:
<span class="number"> - Sep 15, 1991<br><strong>Some Number: </strong>123, 123, 145</span>
Scrapy:
samples = response.css('ul li.somthing')
for sample in samples:
loader = ItemLoader(item=CatelogItem(), selector=sample)
loader.add_css('some', 'span.number::text')
yield loader.load_item()
Item.py
some = Field(
input_processor=MapCompose(str.strip),
output_processor=Join()
)
结果
- Sep 15, 1991
预期
- Sep 15, 1991 Some Number: 123, 123, 145
为什么会出现这种行为?如何在 itemloader 中加载完整的值?
【问题讨论】:
-
你的意思是,loader.add_css('some', 'span.number::innerHtml') 结果是:伪元素::innerhtml 未知
-
是的.. 非常感谢。就像魅力一样。修复:loader.add_css('some', 'span.number *::text')
-
我将把它记下来并投票并勾选答案
标签: web-scraping scrapy scrapy-shell