Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alabeduarte/feedparser-promised
[DEPRECATED] Wrapper around feedparser with promises
https://github.com/alabeduarte/feedparser-promised
article feed feedparser feeds parser promise promises rss wrapper
Last synced: 4 months ago
JSON representation
[DEPRECATED] Wrapper around feedparser with promises
- Host: GitHub
- URL: https://github.com/alabeduarte/feedparser-promised
- Owner: alabeduarte
- License: mit
- Archived: true
- Created: 2015-10-18T23:56:53.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2021-04-19T09:43:40.000Z (over 3 years ago)
- Last Synced: 2024-06-22T18:47:28.298Z (6 months ago)
- Topics: article, feed, feedparser, feeds, parser, promise, promises, rss, wrapper
- Language: JavaScript
- Homepage:
- Size: 732 KB
- Stars: 40
- Watchers: 1
- Forks: 5
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# [DEPRECATED] feedparser-promised
[![npm version](https://img.shields.io/npm/v/feedparser-promised.svg)](https://www.npmjs.com/package/feedparser-promised)
[![downloads](https://img.shields.io/npm/dm/feedparser-promised.svg)](https://www.npmjs.com/package/feedparser-promised)
[![npm license](https://img.shields.io/npm/l/feedparser-promised.svg)](https://spdx.org/licenses/MIT)
[![travis build](https://img.shields.io/travis/alabeduarte/feedparser-promised.svg)](https://travis-ci.org/alabeduarte/feedparser-promised)
[![codeclimate score](https://img.shields.io/codeclimate/github/alabeduarte/feedparser-promised.svg)](https://codeclimate.com/github/alabeduarte/feedparser-promised)⛔️ DEPRECATED
I've decided to deprecate this libary as [feedparser](https://github.com/danmactough/node-feedparser) already does a pretty good job to parse content from a RSS feed.
This repo, as a wrapper, will always get behind the newly features and security updates.
If you used this library until now or have even considered, thank you and I'm sorry.Wrapper around [feedparser](https://github.com/danmactough/node-feedparser) with promises.
## Install
```
$ npm install --save feedparser-promised
```## Usage
```javascript
const feedparser = require('feedparser-promised');const url = 'http://feeds.feedwrench.com/JavaScriptJabber.rss';
feedparser.parse(url).then(items =>
items.forEach(item => console.log('title:', item.title));
).catch(console.error);
```## Using [HTTP Node.js](https://nodejs.org/api/http.html#http_http_get_options_callback) options
```javascript
const feedparser = require('feedparser-promised');const httpOptions = {
uri: 'http://feeds.feedwrench.com/JavaScriptJabber.rss',
timeout: 3000,
gzip: true,
// ...
};feedparser.parse(httpOptions).then(items => { /* do your magic here */ });
```## Using [Feedparser](https://github.com/danmactough/node-feedparser#options) options
```javascript
const feedparser = require('feedparser-promised');const httpOptions = {
uri: 'http://feeds.feedwrench.com/JavaScriptJabber.rss',
// ...
};const feedparserOptions = {
feedurl: 'http://feeds.feedwrench.com/JavaScriptJabber.rss',
normalize: false,
addmeta: false,
resume_saxerror: true
};feedparser.parse(httpOptions, feedparserOptions).then(items => { /* do your magic here */ });
```### List of article properties
* `title`: title
* `description`: frequently, the full article content
* `summary`: frequently, an excerpt of the article content
* `link`: link
* `origlink`: when FeedBurner or Pheedo puts a special tracking url in the `link` property, `origlink` contains the original link
* `permalink`: when an RSS feed has a `guid` field and the `isPermalink` attribute is not set to `false`, `permalink` contains the value of `guid`
* `date`: most recent update
* `pubdate`: original published date
* `author`: author
* `guid` a unique identifier for the article
* `comments`: a link to the article's comments section
* `image`: `an Object containing `url` and `title` properties
* `categories`: an Array of Strings
* `source`: an Object containing `url` and `title` properties pointing to the original source for an article; see the [RSS Spec](http://cyber.law.harvard.edu/rss/rss.html#ltsourcegtSubelementOfLtitemgt) for an explanation of this element
* `enclosures`: an Array of Objects, each representing a podcast or other enclosure and having a `url` property and possibly `type` and `length` properties
* `meta`: an Object containing all the feed meta properties; especially handy when using the EventEmitter interface to listen to `article` emissions### Contributing
There are many ways to contribute, such as fixing opened issues, creating them
or suggesting new ideas.
Either way will be very appreciated.If there are issues open, I recommend you follow those steps:
* Create a branch feedparser-promised#{issue_number}; eg: feedparser-promised#42
* Please, remember to write unit tests.
* Send a pull request!### Running Tests
```bash
$ npm test
```## License
`feedparser-promised` is released under the [MIT License](http://www.opensource.org/licenses/MIT).