iferas93/picofeed

RSS/Atom 解析库

1.0.0-rc1 2020-09-15 07:28 UTC

README

Latest Stable Version Total Downloads Coverage Status SensioLabsInsight

这是一个原始 picoFeed 的分支(已被放弃)。

此分支将努力使 picofeed 尽可能简单、快速和现代,通过移除与解析和创建源无关的一切,并用第三方组件替换它们。最值得注意的是,所有 HTTP 请求现在都由 Guzzle 处理,日志可以选择由 Monolog 处理,缓存可以选择由 Guzzle 中间件处理。

功能

  • 简单且快速
  • Atom 1.0 和 RSS 0.91、0.92、1.0 和 2.0 的源解析器
  • Atom 1.0 和 RSS 2.0 的源编写器
  • favicon 捕获器
  • 导入/导出 OPML 订阅
  • 内容过滤器:HTML 清理,移除像素跟踪器和广告
  • 代理支持
  • 内容抓取器:从原始网站下载完整内容
  • 封装检测
  • 支持 RTL 语言
  • 许可:MIT

要求

  • PHP >= 7.1
  • libxml >= 2.7
  • XML PHP 扩展:DOM 和 SimpleXML
  • cURL 或 Stream Context (allow_url_fopen=On)
  • iconv 扩展

安装

版本

  • 开发版本:master
  • 稳定版本:使用最后一个标签

使用 composer 安装

composer require nicolus/picofeed @stable

使用 Composer 自动加载器的用法示例

<?php

require 'vendor/autoload.php';

use PicoFeed\Reader\Reader;

$reader = new Reader;
$resource = $reader->download('http://linuxfr.org/news.atom');

$parser = $reader->getParser(
    $resource->getUrl(),
    $resource->getContent(),
    $resource->getEncoding()
);

$feed = $parser->execute();

echo $feed;

文档