用gbk比utf-8的好处是什么?
我请求一个页面,发现页面是使用gbk
编码的,我们都知道国际化编码可以使用utf-8
,这也是很常用的编码,为何这里使用gbk
?
是否是有什么好处?是否是占用字节比较少?
import requests
url = "https://item.jd.com/100000177760.html"
r = requests.get(url)
print(r.status_code, r.encoding) # 200, gbk
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
确实,对中文字符而言,GBK 用两个字节存,UTF-8 用三个字节存,理论上是节省空间的。
实际上谁特么在乎这点儿空间,你一个网页文件能有几十兆吗?
现在还有 GBK 完全是历史遗留问题。
GBK 是国标,在 1995 年就出台了,其前身是早在 1980 年就制定的 GB2312,可以说是历史悠久、广为传播。
而 UTF-8 虽然在 1992 年就制定出规范了,但一直没有怎么被应用(毕竟那个年代又几乎没有需要跨国跨语言访问网页的需要,而且网络带宽又很有限很贵,能省一点儿是一点儿)。
而等到微软在 Windows 中支持 UTF-8 又是 1996 的事儿。但要注意,这个时候 UTF-8 还不是“一等公民”,需要单独设置才可以。简体中文系统默认的还是 GBK(繁体中文是 Big-5,还记得小时候日本游戏繁中版需要《南极星》之类的不?暴露年龄了……)
等到 2003 年以后,UTF-8 才开始慢慢被广为接受。而在这之前互联网就已经蓬勃发展了,这些古早的网页使用的往往是 GBK(甚至是 ISO-0646)。而那个年代的程序员再往下教,往往起手又是 GBK,就这么一代传一代(甚至现在你百度中文网页乱码怎么办,还特么能搜出来改成 GBK 编码的)。
现在都 9102 年了,还用 GBK 而不是 UTF-8,这不是给自己找罪受吗?
好处是可以多加加班,想想自己当初为什么脑抽
为了兼容 Win98
GBK没啥好处,纯粹历史遗留问题。