python爬虫中文转成一个字符串类型的unicode字符串(%u)的问题
本文主要介绍某些爬虫在遇到
%u627E%u4E0A%u95E8
这种类似unicode编码的str
类型数据时,无法直接使用decode('unicode-escape')
方法来转成中文时的一个转码的解决方法。
例:
k后面的值即为搜索的关键字
value为
%u627E%u4E0A%u95E8
- 它只不过是将 \ (反斜杠) 换成了 %( 百分号)。
那么问题来了,我们如何将一个str类型的中文,转换成另一个str类型的%u627E%u4E0A%u95E8 编码呢?
一、中文编码成%u类型编码
- 将一段中文转成unicode编码
print('找来了'.encode('unicode-escape')) b'\\u627e\\u6765\\u4e86'
- 转换完成后的结果是一个bytes类型,我们将其转换为str类型
print('找来了'.encode('unicode-escape').decode()) \u627e\u6765\u4e86
-
再用
%
百分号替换\\
双反斜杠后,就得到了转码之后的unicode类型字符串(%u****)print('找来了'.encode('unicode-escape').decode().replace('\\','%')) %u627e%u6765%u4e86
二、unicode类型的字符串转换成中文
只需要将这三步给逆向回去,也就可以将一段unicode类型的str转换成中文了。
print('%u627e%u6765%u4e86'.replace('%','\\').encode().decode('unicode-escape'))
找来了
这篇文章pyhon3爬虫爬取飞卢网小说(仅供学习使用)飞卢小说 效果演示:
请输入小说的名字:找来了
https://b.faloo.com/l/0/1.html?t=1&k=%u627e%u6765%u4e86
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构