4chanapi.js
v1.1.1
Published
Wrapper around parts of the 4chan JSON api that make it easy to rip media from 4chan en masse.
Downloads
19
Readme
#install
The usual.
npm install --save 4chanapi.js
#usage
There are two functions exported, one to grab the threads on a particular board that match any of an array of keywords, and one that returns the media links for a given thread. This is done via promises or async/await.
#example
let chan = require('4chanapi.js')
async function testIt() {
let threads = await chan.threadsWithTopics("v", ["rpg", "metal gear"])
console.log(threads)
let results = await chan.threadMediaLinks(threads[0].url)
console.log(results)
}
testIt()
In the above example threads
would be an array of objects like this:
[ { url: 'https://a.4cdn.org/v/thread/123.json',
semantic_url: 'do-people-actually-find-puzzle-maps-in-rpgs-fun' },
{ url: 'https://a.4cdn.org/v/thread/321.json',
semantic_url: 'best-story-in-gaming-with-xenogears' } ]
The url
is the url of the json api endpoint for that thread, as used by the other function. The semantic_url
is the slugified thread title, suitable for use as a folder name. The output of results
is an array of simple string values representing the pictures/webms in the thread.
[ 'https://i.4cdn.org/v/123.png' ]
There's no function provided to actually download the images, that's up to you.