文本提取:使用了所有方法,但卡住了

Text Extracting: Used All Methods, Yet Stuck

我想从网页中提取一些文本。我搜索了 Whosebug(以及其他网站)以找到合适的方法。我使用 HTML2TEXT、BEAUTIFULSOUP、NLTK 和其他一些手动方法进行提取,但我失败了,例如:

这是我的目标 URL:http://vynylyn.yolasite.com/page2.php 我只想提取没有 tags\codes.

的波斯语段落

(注意:我使用 Eclipse Kepler w\ Python 34 我还想提取文本,然后我想对文本进行 POS 标记、Word\Sentence 分词等。)

我有哪些选择可以让它发挥作用?

首先我会选择你的第二个选项。 BeautifulSoup 4 应该(并且确实)肯定 support unicode(注意它是 UTF-8,一种全局字符编码,所以没有任何波斯语)。

是的,您会得到标签,因为它是一个 HTML 页面。尝试搜索唯一 ID,或查看页面上的 HTML 结构。对于您的示例,查找元素 main,然后查找其下方的内容元素,或者在该特定页面中使用 div#I1_sys_txt。一旦你有了你的元素,你只需要调用 get_text().

试试这个(现在 Python 3):

#!/usr/bin/env python3
import requests
from bs4 import BeautifulSoup

content = requests.get('http://vynylyn.yolasite.com/page2.php')
soup = BeautifulSoup(content.text)

tag = soup.find('div', id='I1_sys_txt')
print(tag.get_text() if tag else "<none found>")