Coder Social home page Coder Social logo

rss-pipes's Introduction

Rss Pipes

Build Status

Rss feeds manipulating tool inspired by Yahoo Pipes. It has no pipes editing interface - you just configure them in .yml files and copy their urls to your reader.

Usage

Simplest app

Just create index.php file with content like this.

<?php

require '../vendor/autoload.php';

$pipesDir = __DIR__ . '/../pipes';
\rsspipes\View::run($pipesDir);

Then you create a pipes dir that contains your pipe configs. For example you can create a config named urmaul.yml with content like this.

# urmaul.com without yii
---
-
  type: atom
  url: http://urmaul.com/atom.xml
-
  type: block
  rules:
    title: Yii

Opening index.php?pipe=urmaul you will see rss feed of urmaul.com blog without posts about Yii.

Available sections

Rss

Parses rss feed.

Atom

Parses atom feed.

Filter

Keep only items that fulfill the condition.

Block

Drop items that fulfill the condition.

Callback

Proces feed or items using callbacks.

Replace

Replaces substring inside attribute.

Parameters:

  • attribute - attribute we want to replace substring in.
  • search - subtring we want to replace.
  • replace - subtring we want to replace with.

Sample:

-
  type: replace
  attribute: title
  search: space
  replace: spaaace

Pipe

Runs separate pipe and adds it's result to feed.

rss-pipes's People

Contributors

urmaul avatar

Stargazers

 avatar Stéphane avatar  avatar Antonio J avatar RYeah Sh avatar  avatar  avatar Kapdap avatar  avatar Maximilian Berger avatar  avatar Sérgio avatar Colter Bowman avatar J. Fitzgerald Flood avatar  avatar

Watchers

 avatar James Cloos avatar  avatar  avatar

Forkers

jayadevn

rss-pipes's Issues

Dependency deleted

I'm not able to install because antimattr/xml has been deleted. Is there a different library that can be used in its place?

Ampersands causing error

I am getting this error when I try to filter the Lifehacker RSS feed. It looks to me like the & in the title is causing the problem.

<br />
<b>Warning</b>:  SimpleXMLElement::addChild(): unterminated entity reference D Club at Your School in <b>/var/www/vendor/urmaul/rss-pipes/src/builder/RssBuilder.php</b> on line <b>40</b><br />
<?xml version="1.0" encoding="UTF-8"?>

Here is the relevant rss item:

<item>
<title>How to Start a D&D Club at Your School</title>
<link>
https://offspring.lifehacker.com/how-to-start-a-d-d-club-at-your-school-1832357861
</link>
<description>
<![CDATA[
<img src="https://i.kinja-img.com/gawker-media/image/upload/s--3jrw8LG_--/c_fit,fl_progressive,q_80,w_636/puecfvul5te9q2bnzynl.png" /><p>Ethan Schoonover (<a href="https://twitter.com/ethanschoonover" target="_blank" rel="noopener" onclick="window.ga(&#39;send&#39;, &#39;event&#39;, &#39;Embedded Url&#39;, &#39;External link&#39;, &#39;https://twitter.com/ethanschoonover&#39;, {metric25:1})">known as Mr. E. to his students</a> in Seattle) took to Twitter recently to describe how he started a Dungeons and Dragons club at his all-girls middle school—and how you can, too. </p><p><a href="https://offspring.lifehacker.com/how-to-start-a-d-d-club-at-your-school-1832357861">Read more...</a></p>
]]>
</description>
<category domain="">dungeons and dragons</category>
<category domain="">rpgs</category>
<category domain="">gaming</category>
<category domain="">gaming clubs</category>
<pubDate>Wed, 6 Feb 2019 16:30:00 GMT</pubDate>
<guid isPermaLink="false">1832357861</guid>
<dc:creator>
<![CDATA[
Meghan Moravcik Walbert on Offspring, shared by Meghan Moravcik Walbert to Lifehacker
]]>
</dc:creator>
</item>

Critical issue

I can describe it only very briefly.

In general, happy birthday dude! 🥳🍻

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.