python utf-8问题

标签 python utf-8 persian

这是我的脚本

# -*- coding: utf-8 -*-
from BeautifulSoup import BeautifulSoup
import urllib2

res = urllib2.urlopen('http://tazeh.net')
html = res.read()

soup = BeautifulSoup(''.join(html))

title = soup.findAll('title')
print title

当我在终端中运行这个脚本时,我得到这样错误的文本

$ python test.py

[<title>ٞاŰ&OElig;گاŮ&Dagger; ؎بعŰ&OElig; ŘŞŘ­Ů&bdquo;Ű&OElig;Ů&bdquo;Ű&OElig; تازŮ&Dagger;</title>]

此标题采用 utf-8 编码和波斯语

我是Python新手,出了什么问题?

最佳答案

如果我添加(就像建议在不太有用的地方做的评论之一):

html = html[:10000].decode("utf-8")

(切片是因为解码在页面更远的偏移处失败)

之前:

soup = BeautifulSoup(html)

它打印:

[<title>پایگاه خبری تحلیلی تازه</title>]

关于python utf-8问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6749890/

相关文章:

android - 如何使用其他日历系统提供 DatePicker 小部件?

python - 在 reST 中指定 anchor 名称

python - Kallithea(女服务员)未开始

Python Pip 第一次失败([Errno 2] 没有这样的文件或目录),然后第二次尝试工作 - 为什么?

php - 立陶宛字符未正确保存到 MySQL 数据库中

wpf - 如何将Silverlight项目或控件转换为WPF

ms-word - 当我在记事本或 MS Word 上的任何阿拉伯语/乌尔都语/波斯语文本中插入英文单词时,为什么单词会打乱?

python - 导入数据帧 - 没有这样的文件或目录

javascript - PHP 中的 HTTPPost 到 JSON

php - 字符编码 : Changing file from MacRoman to UTF-8 breaks string