2024-05-10 01:15:58 发布
网友
我使用Goose从不同的url中提取标题和主文本。除了一个特定的荷兰新闻网站,它可以与大多数网址一起工作。你知道这里出什么问题了吗?在
特定的有问题的URL是here.
我的代码:
g = Goose() content_url = g.extract(url=url) allcontent = content_url.cleaned_text print allcontent
我期待着全文,但奇怪的是,我只是在一个随机的地方从文章中得到了以下段落。在
问题有两个原因:
Goose计算位于html元素的“主要内容”的方式,特别是它试图找到文本块,然后在html树中向上移动,并更新每个封闭元素的分数。作为一个输出,您将收到基于内部评分的最有价值的元素。
你的网页结构。如果您检查html,您会看到文章文本被放置在几个不同的html块中,所以Goose正在选择其中一个。
解决方案视情况而定,如果您的目标是解析这个单一的站点,那么最好使用BeautifulSoup、lxml、grab等模块来单独解析文本块并将它们合并在一起。如果你有数百万个网站需要爬网,那就接受goose给你的开箱即用。在
问题有两个原因:
Goose计算位于html元素的“主要内容”的方式,特别是它试图找到文本块,然后在html树中向上移动,并更新每个封闭元素的分数。作为一个输出,您将收到基于内部评分的最有价值的元素。
你的网页结构。如果您检查html,您会看到文章文本被放置在几个不同的html块中,所以Goose正在选择其中一个。
解决方案视情况而定,如果您的目标是解析这个单一的站点,那么最好使用BeautifulSoup、lxml、grab等模块来单独解析文本块并将它们合并在一起。如果你有数百万个网站需要爬网,那就接受goose给你的开箱即用。在
相关问题 更多 >
编程相关推荐