我想解析一个网页并从中提取有意义的内容。所谓有意义,我指的是用户希望在特定页面中看到的内容(仅文本)(数据不包括广告、横幅、评论等),我希望确保当用户保存页面时,保存他想读取的数据,而不保存其他内容。
简而言之,我需要构建一个像可读性一样工作的应用程序。(http://www.readability.com)我需要获取此网页的有用内容并将其存储在单独的文件中。我真的不知道该怎么办。
我不想使用需要连接到internet并从其服务器获取数据的API,因为数据提取过程需要脱机完成。
我可以想到两种方法:
使用基于机器学习的算法(例如:http://ai-depot.com/articles/the-easy-way-to-extract-useful-text-from-arbitrary-html/)
开发一个网页刮板,可以令人满意地消除所有杂乱的网页。
有没有现有的工具可以做到这一点?我碰到了锅炉管道库(http://code.google.com/p/boilerpipe/),但没有使用它。有人用过吗?结果满意吗? 有没有其他工具,特别是用PHP或Python编写的工具来进行这种web抓取?
如果我需要建立我自己的工具来做这件事,你们建议怎么做?
因为在开始解析之前,我需要清理凌乱或不完整的HTML,所以我会使用Tidy(http://www.w3.org/People/Raggett/tidy/)或Beautiful Soup(http://www.crummy.com/software/BeautifulSoup/bs4/doc/)这样的工具来完成这项工作。
但我不知道在这一步之后如何提取内容。
我是一个业余爱好者,如果有现成的开源工具可以做到这一点,我会很高兴,并且可以很容易地集成到我的代码中,我将用PHP或Python编写。 或者如果我必须写我自己的代码,我希望得到指导谁做过这样的工作!:) 谢谢!
你在google中输入了“python readability”吗?github上有一个非常流行的(200多个关注者)库。
https://github.com/buriy/python-readability
另外,如果要输入'php readability'的话,还有一个php,尽管它有100个追随者,但它已经两年没有活动了 https://github.com/feelinglucky/php-readability
最后,最流行的(350+GithubFollowers)是ruby可读性端口 https://github.com/iterationlabs/ruby-readability
至少你可以看到这三个不同的项目是如何解析网页的“重要部分”的。
您可以使用htql。
相关问题 更多 >
编程相关推荐