GBK 环境下阿拉伯文字的 urlencode 问题

uiqnrnns
  • 12

简单说,想问如何把utf-8编码的阿拉伯文字 تانزھ 通过python编码为 %811%842%811%839%811%870%811%850%811%930

原始文字为 تانزھ ,UTF-8编码

表单页编码为GBK(这个没法改),原始文字通过表单页提交后被浏览器编码为

%811%842%811%839%811%870%811%850%811%930

(这是什么鬼- -b)

用python的urllib.quote试着编码了一下,结果是

%D8%AA%D8%A7%D9%86%D8%B2%DA%BE

(这个跟utf-8编码的表单页提交的编码结果是一样的)

GBK环境的编码规则是怎么样的(GBK没法编阿拉伯文字),如何用python模拟实现

  • 浏览器为FF30 & IE9,win7
  • python版本为2.7.3,linux
回复
阅读 3.9k
1 个回答
python#encoding: GBK
import urllib

gbk_str = 'تانزھ'  # GBK
unicode_str = gbk_str.decode("gbk")
utf8_str = unicode_str.encode("utf-8")
you_want = urllib.quote(utf8_str)
宣传栏