cyj2020014009 2023-02-09 21:24 采纳率: 100%
浏览 21
已结题

关于requests.get获取网页信息的一个编码问题

import requsets
url = '......'
resp = requsets.get(url)
a = resp.text
print(a)
resp.close()

我的问题是,我从 a 中得到了这个网页所采用编码的字符集是 gb2312
我直接 a.encode('gb2312')
这样他会告诉我有一些字符是解码不了的 像这样:UnicodeEncodeError: 'gb2312' codec can't encode character '\xb5' in position 251: illegal multibyte sequence
但是我用 resp.encoding = 'gb2312' 再打印a 这样就能够得出解码的东西
在这两部分进行解码得到的结果不一样,我想问这是为什么? 感谢感谢

  • 写回答

2条回答 默认 最新

  • 一花一草皆风景 2023-02-09 21:31
    关注

    题主,编码是有区别的,参考:https://www.51cto.com/article/687483.html
    如有疑问,可以继续与我联系。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月18日
  • 已采纳回答 2月10日
  • 创建了问题 2月9日

悬赏问题

  • ¥15 tensorrt 推理 yolov8框出现错误
  • ¥15 用hc 05,做蓝牙控制小车 小车只能说初始遥控方向影响,后续不能更改
  • ¥15 51单片机怎么把每次输入键值保存到数组作为我的确认键的判断条件呢
  • ¥45 easy photo不能使用,求帮助
  • ¥15 c语言字符串单词入门问题报错
  • ¥30 我现在是双非人工智能专业不知道要不要转到软件工程专业
  • ¥15 请问12脉波整流机组的外特性曲线具体是如何推导
  • ¥15 abaqus里的python算法
  • ¥100 如何在思科模拟器中进入CEF模式
  • ¥15 Simulink 仿真如何使用MATLAB function模块获取到仿真过程中某一仿真时刻输入到模块的函数的值?