我想从我的Iphone应用程序中的html中提取主要文章内容,并在TextView或CoreText上显示它.
稍后阅读并且InstaPaper Iphone应用程序具有此功能,但在网络上进行研究之后,我仍然不知道他们是如何做到这一点的.
目前,我通过此代码从html中获取文本内容,但它也需要很多不需要的内容.
textArticle = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerText"];
这个问题是我想要的,但遗憾的是它不适用于Iphone应用程序.
类似Instapaper的算法
这是这种功能的开源,但我不确定我是否可以将它用于Iphone应用程序. https://github.com/jiminoc/goose/wiki
之前似乎更聪明地提供api,但它现在不可用. http://smartrmobi.blogspot.com/2011/02/smartr-api-withdrawn-until-further.html
也许,最简单的方法是从xml元素获取文章内容,但这只是我的猜测.
我想知道从哪里开始,所以我真的很感激任何建议.
谢谢
经过研究,似乎我可以使用api从web中提取文本内容.这意味着我需要在获取url后再访问网页并再次呈现结果.
它比仅仅使用上面显示的js脚本要慢,因为它需要访问web api但是稍后阅读它并且instapaper都使用这种方法我想.
http://viewtext.org/
这个api有很好的功能,它将多页文章合二为一.我正在使用这个api,因为其他api没有这个功能.
http://fivefilters.org/content-only/
关于这个的好处是你可以购买脚本并在你自己的服务器上设置.
*更新*
似乎大多数应用程序使用"可读性"或"Instapaper"或"Google"动员来仅解析来自网络的文本内容.
其中,我最喜欢的是"可读性"解析器,因为它没有像Instapaper解析器那样的广告.(尽管将广告用于支付服务器成本没有错)
Pocket还仅为创建口袋集成应用程序的开发人员提供文章解析器.