From 77f2029615d31cd3adb45c5bd5e04160b2cf84ed Mon Sep 17 00:00:00 2001 From: "karl.hudgell" Date: Sat, 18 Jun 2022 13:44:16 +0100 Subject: [PATCH] upversion and working download history --- FeedFilter.js | 10 ++++++++-- checkDownloadHistory.js | 19 +++++++++++++++++++ package.json | 2 +- 3 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 checkDownloadHistory.js diff --git a/FeedFilter.js b/FeedFilter.js index 05f876e..2675ec0 100644 --- a/FeedFilter.js +++ b/FeedFilter.js @@ -2,6 +2,7 @@ const fs = require('fs') const { linkAdder } = require('./JDLinkAdder'); const { getLinksFromURL } = require('./LinkGrabber') const { checkFileName } = require('./checkFileName') +const { checkDownloadHistory } = require('./checkDownloadHistory') async function filterFeed() { let myshowlist = JSON.parse(fs.readFileSync('config.json')).Shows @@ -47,8 +48,13 @@ async function filterFeed() { let download_list = urlObj.urlList // Send Links to JDdownloader if (download_list.length !== 0) { - log.info(download_list.length + ' links for ' + urlObj.fileName + ' have been sent to JDdownloader') - linkAdder(download_list) + if (checkDownloadHistory(urlObj)) { + log.info(urlObj.fileName + ' already downloaded, skipped.') + break + } else { + log.info(download_list.length + ' links for ' + urlObj.fileName + ' have been sent to JDdownloader.') + linkAdder(download_list) + } } else { // No HEVC links found log.info(download_list.length + ' links for ' + show.Name + ' have been found, will recheck next time.') diff --git a/checkDownloadHistory.js b/checkDownloadHistory.js new file mode 100644 index 0000000..e3c923b --- /dev/null +++ b/checkDownloadHistory.js @@ -0,0 +1,19 @@ +const fs = require('fs') + +function checkDownloadHistory(urlObj) { + try { + history = JSON.parse(fs.readFileSync('./downloadHistory.json')); + } catch (error) { + fs.writeFileSync('./downloadHistory.json', JSON.stringify([])); + } + history = JSON.parse(fs.readFileSync('./downloadHistory.json')); + if (history.includes(urlObj.fileName)) { + return true + } else { + history.push(urlObj.fileName) + fs.writeFileSync('./downloadHistory.json', JSON.stringify(history)); + return false + } +} + +module.exports = { checkDownloadHistory } \ No newline at end of file diff --git a/package.json b/package.json index e280cdb..5e4bd81 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jdrssdownloader", - "version": "1.0.1", + "version": "1.0.2", "description": "", "main": "JDRssDownloader.js", "bin": "JDRssDownloader.js",