Skip to content

Instantly share code, notes, and snippets.

@frankmeeuwsen
Created June 25, 2017 19:29
Show Gist options
  • Save frankmeeuwsen/b06aad1f97f5d0933d7eaaf112a003f2 to your computer and use it in GitHub Desktop.
Save frankmeeuwsen/b06aad1f97f5d0933d7eaaf112a003f2 to your computer and use it in GitHub Desktop.
const reader = require ("davereader");
const utils = require ("daveutils");
const fs = require ("fs");
const readerDataFolder = "reader_data/";
const myOutputFolder = "myOutputFolder/";
var config = {
flHttpEnabled: false,
flWebSocketEnabled: false,
listsFolder: readerDataFolder + "lists/",
riversFolder: readerDataFolder + "rivers/",
podcastsFolder: readerDataFolder + "podcasts/",
dataFolder: readerDataFolder + "data/",
addToRiverCallbacksFolder: readerDataFolder + "callbacks/addToRiver/",
buildRiverCallbacksFolder: readerDataFolder + "callbacks/buildRiver/",
ctMinutesBetwBuilds: 1,
flRequestCloudNotify: false,
flDownloadPodcasts: false
};
var feeds = [
"http://users.frankmeeuwsen.com/frankBwgL/microblog.rss",
"https://refind.com/frankmeeuwsen/posts.rss",
"http://hn.geekity.com/newstories.xml"
];
function writeFeedsList (callback) {
var f = readerDataFolder + "lists/feeds.json", jsontext = utils.jsonStringify (feeds);
utils.sureFilePath (f, function () {
fs.writeFile (f, jsontext, function (err) {
if (err) {
console.log ("writeFeedsList: err.message == " + err.message);
}
else {
callback ();
}
});
});
}
function startup () {
config.newItemCallback = function (urlfeed, itemFromParser, item) { //called for each new item
var f = myOutputFolder + utils.getDatePath () + utils.padWithZeros (item.id, 4) + ".json";
utils.sureFilePath (f, function () {
fs.writeFile (f, utils.jsonStringify (item))
});
};
writeFeedsList (function () {
reader.init (config);
});
}
startup ();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment