我想从Iphone应用程序上的html中提取主要文章内容,然后
在TextView或CoreText上显示它。
稍后阅读,InstaPaper Iphone应用程序具有此功能,但是在网上进行研究后,
我仍然不知道他们是如何做到的。
此刻,我通过这段代码从html中获取文本内容,但是它也需要很多不需要的内容。
textArticle = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerText"];
这个问题是我想要的,但可悲的是它不是针对Iphone应用程序的。
Instapaper-like algorithm
这是此类功能的开放源代码,但是我不确定是否可以将其用于Iphone应用程序。
https://github.com/jiminoc/goose/wiki
以前提供的api似乎更聪明,但现在不可用。
http://smartrmobi.blogspot.com/2011/02/smartr-api-withdrawn-until-further.html
也许,最简单的方法是从xml元素获取文章内容,但这只是我的猜测。
我想知道从哪里开始,所以我非常感谢任何建议。
谢谢
最佳答案
经过研究,似乎我可以使用api从网络中提取文本内容。
这意味着我需要在获得URL之后访问网页并再次呈现结果。
它比仅使用上面显示的js脚本要慢,因为它需要访问Web api,但是
我猜以后再读,instapaper都使用这种方法。
以下是我到目前为止发现的Web API。
http://viewtext.org/
此api具有非常好的功能,可以将多页的文章合并为一个。
我正在使用此API,因为其他API没有此功能。
http://fivefilters.org/content-only/
很棒的事情是您可以购买脚本并在自己的服务器上进行设置。
*更新*
似乎大多数应用程序都使用“可读性”或“ Instapaper”或“ Google”动员器来仅解析来自网络的文本内容。
其中,我目前最喜欢的是“可读性”解析器,因为它不像Instapaper解析器那样带有广告。 (不过,投放广告来支付服务器费用没有错)
Pocket还仅为创建Pocket集成应用程序的开发人员提供文章分析器。
关于iphone - 如何从HTML中提取文本内容,例如“稍后阅读”或InstaPaper Iphone应用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5960948/