html DOM:用于测试编码/解码的良好测试网页

我正在做的是:

  • 通过javascript,阅读网页的DOM

  • 转换为json字符串

  • 作为ajax发送到python

  • 在Python中,json将字符串解码为对象

我想要的是将json中包含的任何文本都采用unicode以避免任何字符问题。我曾经为此使用beautifulsoup:

from bs4 import * 

from bs4.dammit import UnicodeDammit

text_unicode = UnicodeDammit(text, [None, None], "html", True).unicode_markup

但这不适用于json字符串。当我尝试对字符串进行json解码时,通过UnicodeDammit运行字符串会导致错误。


问题是,我什至不确定收集DOM不会自动处理此问题。


因此,对于初学者来说,我想要一系列测试网页来对此进行测试。其中一个是用utf-8编码的,另一个是用其他东西编码的,依此类推。例如,如果您认为它是utf-8,但不是,则使用看起来错误的字符。请注意,我什至不用考虑网页的声明编码。这常常是错误的。


忽然笑
浏览 159回答 1
1回答

慕沐林林

您正在尝试解决不存在的问题。浏览器负责检测和处理网页编码。它将根据服务器标头,HTML页面中的meta标签以及必要时的简单猜测来确定正确的编码。DOM为您提供Unicode数据。JSON处理Unicode数据;将JSON数据发送到Python进程会发送适当编码的字节数据,任何体面的JSON库都会为您转换为Unicode值。Pythonjson模块就是这样的一个库。刚刚从你的JavaScript脚本的加载数据json.load()或json.loads()功能原样。您的浏览器已经使用了正确的编码(很可能是UTF-8),并且Pythonjson模块将解码使用的任何标准编码,而无需进行其他配置或处理。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python