我正在从html文件中读取文本并进行一些分析。这些.html文件是新闻文章。
码:
html = open(filepath,'r').read()
raw = nltk.clean_html(html)
raw.unidecode(item.decode('utf8'))
现在,我只想要文章的内容,而不是广告,标题等文本的其余部分。我如何在python中相对准确地做到这一点?
我知道一些工具,例如Jsoup(java
API)和bolier,但我想在python中这样做。我可以找到一些使用bs4的技术,但仅限于一种类型的页面。我有来自众多来源的新闻页面。另外,也没有任何示例代码示例。
我正在寻找与python中完全类似的内容http://www.psl.cs.columbia.edu/wp-
content/uploads/2011/03/3463-WWWJ.pdf
。
编辑:
为了更好地理解,请编写示例代码以提取以下链接的内容http://www.nytimes.com/2015/05/19/health/study-
finds-dense-breast-tissue-isnt-always -a-high-cancer-risk.html?src = me&ref =
general
Python中也有此库:)
自从您提到Java以来,有一个适用于样板程序的Python包装器,可让您在python脚本中直接使用它:https : //github.com/misja/python-
boilerpipe
如果要使用纯python库,则有2个选项:
https://github.com/buriy/python-readability
和
https://github.com/grangier/python-goose
在这两者中,我更喜欢Goose,但是请注意,由于某些原因,它的最新版本有时无法提取文本(我的建议是现在使用1.0.22版)。
编辑:这是使用Goose的示例代码:
from goose import Goose
from requests import get
response = get('http://www.nytimes.com/2015/05/19/health/study-finds-dense-breast-tissue-isnt-always-a-high-cancer-risk.html?src=me&ref=general')
extractor = Goose()
article = extractor.extract(raw_html=response.content)
text = article.cleaned_text
问题内容: 更新资料 Boilerpipe看起来确实工作得很好,但是我意识到我并不需要主要内容,因为许多页面上没有文章,而只是带有简短描述的链接到整个文本(这在新闻门户网站中很常见),并且我不想丢弃这些短裤文字。 因此,如果API执行此操作,请获取不同的文本部分/以某种方式将每个部分分开的块,这些块与单个文本不同(仅在一个文本中没有用),请报告。 问题 我从随机站点下载了一些页面,现在我想分析页面
问题内容: 我正在用Java开发一个应用程序,该应用程序可以从不同的网页获取文本信息并将其汇总为一页。例如,假设我在不同的网页(例如印度教,印度时报,政治家等)上都有新闻。该应用程序应该从这些页面的每个页面中提取要点,并将它们整合为一条新闻。该应用程序基于Web内容挖掘的概念。作为该领域的初学者,我不知道从哪里开始我浏览了一些研究论文,这些论文将消除噪声作为构建此应用程序的第一步。 因此,如果给我
我有一个位于Azure Data Lake Store上的文件,我正在编写一个apiendpoint以将该文件的内容作为字符串检索。我遇到的问题是,当我尝试读取流时,我得到一个空字符串。这是我正在使用的: 目前,返回文件的响应工作正常,我可以在PC上打开文件并读取其内容。使用StreamReader返回文件内容的响应返回空字符串。
是否可以在不使用下载功能的情况下读取文件中的值? 代替的东西: 类似于:
我正在尝试使用表单识别器-Azure认知服务从pdf文件中提取文本。我使用的是定制模型,我用我的模型训练这项服务,然后尝试提取数据。 我的PDF通常有超过1页。但是我对从第一页提取文本感兴趣。Rest所有页面没有任何重要性。 那么,有没有什么方法可以训练我的系统通过给出页码从选定的页面中提取文本? 祝好 玛杜
问题内容: 我正在编写一些Java代码,以便使用Wikipedia在文本上实现NLP任务。如何使用JSoup提取Wikipedia文章的所有文本(例如,http://en.wikipedia.org/wiki/Boston中的所有文本)? 问题答案: 当然,您可以通过这种方式检索格式化的内容。如果您想要“原始”内容,则可以使用或使用call 过滤结果。