我需要刮文本数据从网站使用语言以外的英语(主要是东欧语言),使用Scrapy。当Scrapy完成后,它需要将刮取的数据转换为JSON以供进一步使用。你知道吗
问题是,如果我只是像这样擦掉文字:
i['title'] = response.xpath('//home/title//text()').extract_first()
如果不编码,Scrapy会抛出如下内容:
UnicodeEncodeError: 'charmap' codec can't encode character '\u0107' in position 103: character maps to <undefined>
另一方面,如果我对它进行编码,并尝试用json.dumps文件(),我得到一个TypeError,因为json不能序列化字节。我已经看过这个解释(How to encode bytes in JSON? json.dumps() throwing a TypeError),但是它没有什么用处,因为我需要使用utf-8或utf-16,而不是ascii。你知道吗
你知道怎么解决这个问题吗?你知道吗
你看了回复头了吗?它告诉你什么?我可以想象它告诉你的是另一种编码方式。你知道吗
Pythons解码函数有一个参数error('strict'、'replace'、'ignore'),您可以使用它来调试和查找问题'
抱歉,这是一个评论,而不是一个答案,但我还不能评论(太少代表)
相关问题 更多 >
编程相关推荐