【发布时间】:2020-08-06 15:24:58
【问题描述】:
我正在使用scrapy 来抓取示例网站。这是网页 - booksquotes。为了提取数据,我使用 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。我阅读了此similar question 的答案,但由于示例使用extract 而不是get,因此无法理解。我还尝试使用 cmets 中提到的.encode(),但返回的是空 JSON。请指教。
【问题讨论】:
-
您正在抓取的网站是否使用不同的编码,并且可能声称它使用的是 UTF-8?您下拉的实际字节数是多少? (可能只是一个小的十六进制转储,在有问题的字符串周围有几个上下文字符就足够了。)另见meta.stackoverflow.com/questions/379403/…
-
“这个类似的问题”是什么?请给个链接?
-
@tripleee 编辑了问题以包含类似的问题。
-
再次,请显示有问题的数据和足够的代码,以查看您如何尝试保存它,最好简化为minimal reproducible example。