2

我正在尝试获取非英文网站的纯文本内容。例如,我想获取http://www.bbc.co.uk/hindi/的印地语内容

对于英文网站的文本转储,我wget用来获取内容。然后使用 HTML 解析器删除 HTML 标签并给我干净的文本。

在非英语网站上工作的等效工具是什么?

这只是我正在探索的一些宠物项目。速度不是什么大问题。我会在 Linux 环境中编码,最好使用 Python 或 Java 或 C/C++(按此顺序)。

4

1 回答 1

2

听起来您用于解析 HTML 的方法在遇到 unicode 时会失败。有一个名为 BeautifulSoup 的模块,它非常适合解析各种网站,并且可以很好地处理 unicode。交互式尝试:

>>> import urllib, BeautifulSoup
>>> html = urllib.urlopen( 'http://www.bbc.co.uk/hindi/' ).read()
>>> soup = BeautifulSoup.BeautifulSoup( html )
>>> print soup.find( 'title' ).contents
[u'BBC Hindi - \u092a\u0939\u0932\u093e \u092a\u0928\u094d\u0928\u093e']

我的终端无法打印这些字符,但是您通常显示印地语文本也应该在这里工作。

于 2011-10-30T04:22:23.693 回答