Python 用刮刀刮特殊字符
我正在用丹麦语刮一页纸。我的输出有问题。输出包含许多特殊字符,如Python 用刮刀刮特殊字符,python,web-scraping,scrapy,Python,Web Scraping,Scrapy,我正在用丹麦语刮一页纸。我的输出有问题。输出包含许多特殊字符,如(Ã¥,Ã,Ã¥,Ã),与页面上的不同 我怎样才能像在页面上一样刮取文本 示例链接: 您可以在get()或getall()之后添加.encode('utf8') Scrapy将数据提取为unicode字符串,这可能会帮助您了解有关unicode和UTF-8的abit 您可以在get()或getall()之后添加.encode('utf8') Scrapy将数据提取为unicode字符串,这可能会帮助您了解有关unicode和UTF-
(Ã¥,Ã,Ã¥,Ã)
,与页面上的不同
我怎样才能像在页面上一样刮取文本
示例链接:
您可以在
get()
或getall()之后添加.encode('utf8')
Scrapy将数据提取为unicode字符串,这可能会帮助您了解有关unicode和UTF-8的abit
您可以在get()
或getall()之后添加.encode('utf8')
Scrapy将数据提取为unicode字符串,这可能会帮助您了解有关unicode和UTF-8的abit
丹麦编解码器是cp865
检查所有可用的编解码器
NB:只有在你的英文网站上使用ascii
def string_cleaner(rouge_text):
return ("".join(rouge_text.strip()).encode('cp865', 'ignore').decode("cp865"))
使用ignore
忽略错误
用法
yield {
"Name": string_cleaner(name),
...
}
更多关于代码功能的解释请检查我的代码分解丹麦编解码器是cp865
检查所有可用的编解码器
NB:只有在你的英文网站上使用ascii
def string_cleaner(rouge_text):
return ("".join(rouge_text.strip()).encode('cp865', 'ignore').decode("cp865"))
使用ignore
忽略错误
用法
yield {
"Name": string_cleaner(name),
...
}
更多关于代码的解释请查看我的代码分解您使用哪种python版本?我强烈建议您切换到python3,它将解决您在unicode符号方面的大部分问题。我使用的是python3.7,我在selenium中尝试了utf-8,但它不起作用,但当我删除utf-8编码时,输出与网站相同。那么,你知道我怎么能用scrapy忽略utf-8编码吗?3.7很好。还有一个问题:你的产出是多少?我是说你在哪里看到破碎的符号?你是否可以刮到文件/屏幕/数据库?是的,我用excel打开了文件。无论如何,非常感谢。我将JSON文件转换为Excel,它对我有效。您使用哪种python版本?我强烈建议您切换到python3,它将解决您在unicode符号方面的大部分问题。我使用的是python3.7,我在selenium中尝试了utf-8,但它不起作用,但当我删除utf-8编码时,输出与网站相同。那么,你知道我怎么能用scrapy忽略utf-8编码吗?3.7很好。还有一个问题:你的产出是多少?我是说你在哪里看到破碎的符号?你是否可以刮到文件/屏幕/数据库?是的,我用excel打开了文件。无论如何,非常感谢。我将JSON文件转换为Excel,它对我有效。不幸的是,这不起作用。我用selenium和utf-8进行了尝试,但它不起作用,但当我删除utf-8编码时,输出与网站相同。那么,你知道我怎么能用scrapy忽略utf-8编码吗?不幸的是,这不起作用。我用selenium和utf-8进行了尝试,但它不起作用,但当我删除utf-8编码时,输出与网站相同。那么,你知道我怎么能用scrapy忽略utf-8编码吗?这个方法完全跳过了字母。NORDJYSK DØgngaving AKTIESELSKAB至NORDJYSK DGNGALVANISERING AKTIESELSKAB已跳过以下字母Ø使用丹麦代码cp865
而非英语ascii
。更新了答案此方法完全跳过了字母。NORDJYSK DØgngaving AKTIESELSKAB至NORDJYSK DGNGALVANISERING AKTIESELSKAB已跳过以下字母Ø使用丹麦代码cp865
而非英语ascii
。更新了答案