首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >返回HEX作为符号

返回HEX作为符号
EN

Stack Overflow用户
提问于 2018-09-22 23:15:57
回答 2查看 186关注 0票数 0

我有一个discord.py机器人,目前使用这段代码作为youtube命令,并返回Youtube的前5首歌曲。

代码语言:javascript
复制
 for v in videolist:
    youtube  = etree.HTML(urlopen(v).read())
    video_title = youtube.xpath("//span[@id='eow-title']/@title")
    v_t = ''.join(video_title)
    vt.append(v_t)
  names = vt[1:6]
  await bot.say(vt)

这将获得所有歌曲的视频标题。

这并不是说它不起作用,但我得到了以下输出(缩短)

代码语言:javascript
复制
`['Yowamushi Pedal - Love Hime Opening [Full Song]', 'Koi no Hime Hime Pettankoã\x80\x8cæ\x81\x8bã\x81®ã\x83\x92ã\x83¡ã\x83\x92ã\x83¡ã\x81ºã\x81£ã\x81\x9fã\x82\x93ã\x81\x93ã\x80\x8dæ\xad\x8cã\x81£ã\x81¦ã\x81¿ã\x81\x9fã\x80\x90ï¼\x8aã\x81ªã\x81¿ã\x82\x8aã\x82\x93ã\x80\x91', '~ hime hime `:

如果您没有注意到编码错误/问题,这就是下面这个看上去很烂的东西:\x81\x93ã\x80\x8dæ\xad\x8cã\x81£ã\x81¦ã\x81¿ã\x81\x9fã\x80\x90ï¼\x8

我怎样才能让python返回正确的符号而不是这个六进制代码呢?任何信息都将是伟大的,欢迎!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-23 00:51:38

以下是以UTF-8编码的日语字符串的十六进制值:

代码语言:javascript
复制
e3, 80, 8c, e6, 81, 8b, e3, 81, ae, e3, 83, 92, e3, 83, a1, e3, 83, 92, e3, 83, a1, e3, 81, ba, e3, 81, a3, e3, 81, 9f, e3, 82, 93, e3, 81, 93, e3, 80, 8d, e6, ad, 8c, e3, 81, a3, e3, 81, a6, e3, 81, bf, e3, 81, 9f, e3, 80, 90, ef, bc, 8a, e3, 81, aa, e3, 81, bf, e3, 82, 8a, e3, 82, 93, e3, 80, 91

如果你稍微斜视一下眼睛,你就能看到里面“看上去很恶心的东西”。

“默认修复”似乎工作得很好,即从ISO 8859-1重新编码到UTF-8:

对于这一投入:

代码语言:javascript
复制
s = 'Koi no Hime Hime Pettankoã\x80\x8cæ\x81\x8bã\x81®ã\x83\x92ã\x83¡ã\x83\x92ã\x83¡ã\x81ºã\x81£ã\x81\x9fã\x82\x93ã\x81\x93ã\x80\x8dæ\xad\x8cã\x81£ã\x81¦ã\x81¿ã\x81\x9fã\x80\x90ï¼\x8aã\x81ªã\x81¿ã\x82\x8aã\x82\x93ã\x80\x91'

此代码:

代码语言:javascript
复制
s.encode('latin-1').decode('utf-8')

产生这个输出:

代码语言:javascript
复制
'Koi no Hime Hime Pettanko「恋のヒメヒメぺったんこ」歌ってみた【*なみりん】'

我不知道你的机器人在做什么,但它得到默认的ISO 8859-1编码文本,而不是正确解码UTF-8。

票数 2
EN

Stack Overflow用户

发布于 2018-09-22 23:50:19

您是否尝试过隐式转换为Unicode?例如:

代码语言:javascript
复制
    a = u"[狂おしく咲いた凄惨な骸は奏で、愛おしく裂いた少女は聖餐の詞を謳う。 #10] 謳"

这使字符串Unicode受到支持,并可能修复您的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52461661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档