DZReadability 0.2.3

DZReadability 0.2.3

测试已测试
语种语言 Obj-CObjective C
许可证 MIT
发布上次发布2015年9月

Denis Zamataev 维护。



关于

主要内容是关于使网页在移动设备上可读。解析器提供了足够的选项,可以为您提供根据普通的网页 URL 或内容HTML 文档,包含仅包含主要文章内容的清晰标记。还有一个选项可以下载和嵌入图片,这样您就可以完全离线使用文档,将其加载到 WebView 中。

基本概念是在 Curtis Hard 的仓库中找到的(https://github.com/curthard89/COCOA-Stuff/tree/master/GGReadabilityParser),并大大改进了新功能:iOS 兼容性(多亏了 HTMLReader 项目)、新的清洁选项、图片下载选项、CSS 选择器而不是 XPath、ARC、性能优化。

请随时提交错误和 pull 请求。

我没有发现类似的项目,所以如果您知道一些,请通过 pm 联系我。

了解使用此代码的项目也很好,如果您这样做,请让我知道。

使用方法

要运行示例项目,首先克隆仓库,然后从 Example 目录运行 pod install

使用很简单,您必须创建一个新的 DZReadability 对象(如下所示),该对象包含要下载和解析的文档的 URL):

self.readability = [[DZReadability alloc] initWithURLToDownload:docUrl options:nil completionHandler:^(DZReadability *sender, NSString *content, NSError *error) {
    if (!error) {
        NSLog(@"result content:\n%@", content);
        // handle returned content
    }
    else {
        // handle error
    }
}];
[self.readability start];

如果您已经有了想要解析的内容,您可以调用

NSString *html = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.outerHTML"]; // or any other html as string
readability = [[DZReadability alloc] initWithURL:docUrl rawDocumentContent:html options:nil completionHandler:^(DZReadability *sender, NSString *content, NSError *error) {
    if (!error) {
        NSLog(@"result content:\n%@", content);
        // handle returned content
    }
    else {
        // handle error
    }
}];
[readability start];

要求

ARC
OSX >= 10.7
iOS >= 5.0

dependency 'HTMLReader'

安装

注意

您可能需要 CSS 样式来使文档看起来更好。基本上,CSS 样式应使图片适合 webview,分配好的字体,并处理表格标记及其宽度。您应该在文档的页眉部分准备包含 CSS 样式的模板,然后将解析器提供的内容插入到 HTML 模板的主体部分。如果您计划使用 UIWebView 向用户展示清理后可读的文档,这是必需的。

不幸的是,我无法提供确切的 CSS 样式和 HTML 模板,因为它们不是我的知识产权。您自己找出它们吧。请考虑发出 pull 请求。谢谢!

屏幕截图

screenshot01-iOS

作者

Denis Zamataev, [email protected]

Curtis Hard,https://github.com/curthard89(《COCOA-Stuff》仓库中的GGReadabilityParser:https://github.com/curthard89/COCOA-Stuff/tree/master/GGReadabilityParser

许可证

DZReadability 在MIT许可证下可用。更多信息请参阅LICENSE文件。