我正在寻找一个服务器端库(最好用PHP)来解析和提取免费用于商业用途的网页内容。它应该能够提取页面内容部分的标题和html(包括图像),但过滤掉广告和不相关的内容。
Readability Parser API是一个非自由软件,但我正在寻找免费的替代品。
有什么想法吗?
答案 0 :(得分:1)
我正在使用Boilerpipe。遗憾的是它适用于Java,但如果你在PHP中找不到任何东西,它可能对你有用。显然,这并不完美,但值得一试。它也是开源的,因此可以进行必要的更改。
它有几个所谓的'提取器',所以你可以选择最适合你需要的那个。
用法也非常简单,例如:
URL url = new URL("http://example.com/article");
String articleText = ArticleExtractor.INSTANCE.getText(url);
答案 1 :(得分:0)
尝试使用Simple HTML DOM 我用它来为一个相当复杂的网站构建一个刮刀。效果很好。
答案 2 :(得分:0)
从页面获取任何数据的最佳方式,如维基百科的艾菲尔铁塔的地理位置,是jQuery DOM。
<span class="geo-dms">
<span class="geo-lat">48°51′29″</span>
<span class="geo-lon">2°17′40″</span>
</span>
在FireBug控制台jQuery('.geo-lat').text()
中进行测试。 jQuery是一个JavaScript库,是服务器端JavaScript Web服务器Node.js获得的最佳结果。有很多很好的Node.js解决方案可以通过DOM遍历进行Web爬行。