我试图在运行 mysql 查询的 Linux 服务器上运行 Python 中的脚本,该查询会产生一些希伯来语字符串(为了简化而在此处设置),如下所示:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import cgi
import cgitb;cgitb.enable()
import sys
import urllib
import base64
from MySQL import sql
print """Content-Type: text/html\n"""
s = sql()
s.run("SET NAMES utf8;")
query = "SELECT page FROM pages"
results = s.run(query)
s.close()
ans = {}
ans['count'] = 0
ans['items'] = []
for res in results:
page = result[0].encode('utf-8')
print "====="+page+"======"
ans['items'].append({
'td0':page
})
print ans
s.close()
这尴尬地打印
"Content-Type: text/html"
====/מפת-זרזיר/גריפאת/1/====
{'count': 0, 'items': [{ 'td0': '/\xd7\x9e\xd7\xa4\xd7\xaa-\xd7\x96\xd7\xa8\xd7\x96\xd7\x99\xd7\xa8/\xd7\x92\xd7\xa8\xd7\x99\xd7\xa4\xd7\x90\xd7\xaa/1/'}]}
为什么哦为什么字典中的页面会丢失编码???我不知道为什么会这样。任何帮助将不胜感激。
谢谢