我正在尝试获取非英语网站的纯文本内容。例如,我想获得http://www.bbc.co.uk/hindi/
的印地文内容对于英文网站的文本转储,我使用wget
来获取内容。然后使用HTML解析器删除HTML标记并给我干净的文本。
在非英语网站上工作的等效工具是什么?
这只是我正在探索的一些宠物项目。速度并不是一个值得关注的问题。我会在Linux环境中编写代码,最好使用Python或Java或C / C ++(按此顺序)。
答案 0 :(得分:2)
听起来,当您遇到unicode时,您用于解析HTML的方法会失败。有一个名为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']
我的终端无法打印这些字符,但是您通常也会显示印地语文本。