podcast-partytime
v4.9.1
Published
[![NPM version](https://img.shields.io/npm/v/podcast-partytime.svg)](https://www.npmjs.com/package/podcast-partytime)
Downloads
96
Readme
Partytime Podcast Parser
Podcast feed parser, originally extracted from podcast index - https://github.com/Podcastindex-org/aggregator/tree/master/partytime. It is up to you, the consumer of this package, to fetch the feed which needs to be parsed. When fetching the feed YOU SHOULD INCLUDE A PROPER USER-AGENT.
This package will also identify new namespace elements and call out the "phases" implemented by the feed in a pc20support
element.
By default, this will produce log messages that are warnings or errors, but this can be controlled via an environment variable, PARTYTIME_LOG
can be set to whatever log level you may want.
Usage
npm install podcast-partytime
Typescript
import fetch from "node-fetch";
import pt from "podcast-partytime";
// Check CORS support
pt.checkFeedByUri("https://www.spreaker.com/show/3128218/episodes/feed").then(console.log);
fetch("http://mp3s.nashownotes.com/pc20rss.xml", {
headers: {
"user-agent": "partytime/example",
},
})
.then((resp) => resp.text())
.then((xml) =>
console.log(
pt.checkFeedByObject({
uri: "http://mp3s.nashownotes.com/pc20rss.xml",
feedObject: pt.parseFeed(xml),
})
)
);
// Parse Feed
fetch("http://mp3s.nashownotes.com/pc20rss.xml", {
headers: {
"user-agent": "partytime/example",
},
})
.then((resp) => resp.text())
.then((xml) => console.log(pt.parseFeed(xml)));
Javascript
const fetch = require("node-fetch");
const pt = require("podcast-partytime");
// Check CORS support
pt.checkFeedByUri("https://www.spreaker.com/show/3128218/episodes/feed").then(console.log);
fetch("http://mp3s.nashownotes.com/pc20rss.xml")
.then((resp) => resp.text())
.then((xml) =>
console.log(
pt.checkFeedByObject({
uri: "http://mp3s.nashownotes.com/pc20rss.xml",
feedObject: pt.parseFeed(xml),
})
)
);
// Parse Feed
fetch("http://mp3s.nashownotes.com/pc20rss.xml")
.then((resp) => resp.text())
.then((xml) => console.log(pt.parseFeed(xml)));
Resources
Sample Feeds
The sample feeds below were chosen for their varied nature. Including things like non-traditional titles, different publishers, and season usage.
- Pod Save America
- No Agenda
- This Week in Tech
- Launched
- Anatomy of Next
- Thomas Ferris Nicolaisen's rants
- Hip Hop Hangout Podcast
- Web 2.0
Development
Update dependencies (person enum and valid license list) via yarn deps
or npm run deps
.