python在url中转换中文字符

时间:2015-04-07 07:40:02

标签: python scrapy scrapy-shell

我有一个像

的网址

href =" ../ job / jobarea.asp?C_jobtype =经营管理主管& peoplenumber = 151"

这在inspect元素中显示。 但是当在新标签中打开时,它显示为

../工作/ jobarea.asp C_jobtype =%B8G%C0%E7%BA%DE%B2z%A5D%BA%DE&安培; peoplenumber = 151

我如何知道浏览器使用哪种编码方式进行转换。当我尝试scrapy时,它显示一些其他格式,并且它停止为500内部服务器错误。你能解释一下吗??

1 个答案:

答案 0 :(得分:3)

繁体中文,请尝试cp950

#-*-coding:utf8 -*-

import urllib
s = '經營管理主管'.decode('utf-8').encode('cp950')
print urllib.quote(s)

q ='%B8g%C0%E7%BA%DE%B2z%A5D%BA%DE'
print urllib.unquote(q).decode('cp950').encode('utf-8')

结果

%B8g%C0%E7%BA%DE%B2z%A5D%BA%DE
經營管理主管