我正在使用scrapy
来抓取一个示例网站。这是图书报价网页。为了提取数据,我使用了xpath选择器。特别是为了获得特定书籍的价格,我使用以下xpath-//*[@id="default"]/div[1]/div/div/div/section/div[2]/ol/li[1]/article/div[2]/p[1]/text()
现在,当我提取价格时,由于我使用.get()
,所以省略了£符号。我假设.get()
返回Unicode
,从而返回字符u00a3
。我阅读了这个类似问题的答案,但由于示例使用extract
而不是get
,所以无法理解。我也尝试过使用注释中提到的.encode()
,但返回了一个空的JSON。请告知。
将其放在蜘蛛中start_urls
下方
custom_settings = { 'FEED_EXPORT_ENCODING' : 'utf-8' }
JSON不会自动编码为utf-8,您必须设置这一点。