diff --git a/index.js b/index.js new file mode 100644 index 0000000..6d6f797 --- /dev/null +++ b/index.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const axios = require('axios'); +const prompt = require('prompt-sync')(); + +let metadata; +let lbryData; +let channelClaim = prompt(`Enter Channel Claimid:`); +let url = `https://chainquery.lbry.com/api/sql?query=SELECT%20*%20FROM%20claim%20WHERE%20publisher_id%20=%20%27${channelClaim}%27%20AND%20bid_state%20%3C%3E%20%27Spent%27`; + +console.log(url); +axios.get(url) +.then (response =>{ + metadata= response.data; + metadata=JSON.stringify(metadata, null, 1); + lbryData= JSON.parse(metadata); + + console.log(`Full Dump Mode selected`); + console.log(`API is Working and successfully fetched. Writing Data to File!`); + fs.writeFileSync('meta.json', metadata); + + +}) + .catch(error => { + console.log(error); + }); + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..200a79e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,42 @@ +{ + "name": "lbrymeta", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "requires": { + "follow-redirects": "^1.10.0" + } + }, + "follow-redirects": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" + }, + "prompt-sync": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/prompt-sync/-/prompt-sync-4.2.0.tgz", + "integrity": "sha512-BuEzzc5zptP5LsgV5MZETjDaKSWfchl5U9Luiu8SKp7iZWD5tZalOxvNcZRwv+d2phNFr8xlbxmFNcRKfJOzJw==", + "requires": { + "strip-ansi": "^5.0.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..9e05d2f --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "lbrymeta", + "version": "0.1.0", + "description": "A script that dumps channel meta in CSV", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [ + "lbry", + "lbrynet", + "channel", + "dump", + "csv" + ], + "author": "Eniamza", + "license": "MIT", + "dependencies": { + "axios": "^0.21.1", + "prompt-sync": "^4.2.0" + } +}