甜萝 发表于 2022-11-3 19:01

检测编码类型-python

本帖最后由 paypojie 于 2022-11-4 00:01 编辑

                                                                   用 chardet.detect()方法检测bytes的编码类型



第一步    在命令行下输入pip install chardet    并且按下回车键(Enter)




然后导入chardet这个第三方库   第一行代码   import chardet
import chardet

data = '床前明月光,疑是地上霜'.encode('utf-8')
c = chardet.detect(data)
print(c)

print(chardet.detect('离离原上草一岁一枯荣'.encode('utf-8')))

data = '离离原上草一岁一枯荣'.encode('utf-8')
print(chardet.detect(data))

c = chardet.detect('离离原上草一岁一枯荣'.encode('utf-8'))
print(c)

# 分别用三行代码 一行代码 两行代码 两行代码 来检查编码类型 发现是utf-8的编码confidence表示检测概率 1为100% 因为是0.99 所以检测概率是99%

# -------------------------------------------------------------------------------------------------------------

data = '床前明月光,疑是地上霜'.encode('gbk')
c = chardet.detect(data)
print(c)

print(chardet.detect('离离原上草一岁一枯荣'.encode('gbk')))

data = '离离原上草一岁一枯荣'.encode('gbk')
print(chardet.detect(data))

c = chardet.detect('离离原上草一岁一枯荣'.encode('gbk'))
print(c)

# 分别用三行代码 一行代码 两行代码 两行代码(代码行数取决于 赋值给变量or不赋值给变量) 来检测编码类型 发现是gbk的编码 date是简体中文 检测概率是gbk编码的为74%
# chardet.detect()方法易用 用该方法检测编码类型非常的简单方便





一些个人想法 关于是先定义变量名 然后写功能代码赋值给变量
还是先实现功能 再赋值给变量
还是采取混合方式 比如第一行定义变量 后面写功能代码 第二行 又改为写功能代码 再赋值给变量
或者第一行写功能代码 然后赋值给变量 第二行定义变量 后面写功能代码
可能 我这样描述不好理解 用实际例子来实现上面描述的内容

比如第一种写法

d
=
1

顺序是先定义变量名d 然后写= 最后写1

第二种写法

1
=
d

顺序是先写1 然后在1的左边写等于号 然后在等于号的左边写变量名

第三种写法就是第一种加上第二种的写法 采用混合方式 时而第一种写法 时而第二种写法

感觉有点讲不清 可能要录视频才能讲的明白

个人认为一种写法 做不到看到变量名见名知意 第二种写法 先实现功能 再赋值给变量 蛮好的 第三种 不知道怎么说
这是写代码的习惯 我一般采用第一种写法



sgbyg 发表于 2022-11-3 19:27

可以检测爬取到的数据的编码吗{:301_995:}

甜萝 发表于 2022-11-3 23:11

sgbyg 发表于 2022-11-3 19:27
可以检测爬取到的数据的编码吗

爬虫 我还不会 所以无法解答你这个问题
页: [1]
查看完整版本: 检测编码类型-python