Skip to content

Lakshanxcute/scraper

 
 

Repository files navigation

scraper

Install package

npm i @bochilteam/scraper

Install latest version from github (not recommended)

npm i github:bochilteam/scraper

What's updated?

  • Using zod to validate data input and output. (not finished yet)
  • Some bug fixes.
  • Breaking changes. see this
  • Added didyoumean to search for similar words.
  • Added snapsave
  • Added zippyshare
  • Added sfilemobi

Example use

// ESM 
import * as scraper from '@bochilteam/scraper'
// CJS
const scraper = require('@bochilteam/scraper')

Instagram Downloader

// Instagram Downloader
import { 
    instagramdl, 
    instagramdlv2, 
    instagramStory,
    instagramStoryv2
} from '@bochilteam/scraper'
const url = 'https://www.instagram.com/reel/CXK49yFLtJ_/?utm_source=ig_web_copy_link'
instagramdl(url).then(console.log).catch(console.error)
instagramdlv2(url).then(console.log).catch(console.error)
// use both to handle error
instagramdl(url).catch(_ => instagramdlv2(url)).then(console.log)
// Use async/await or top level await
console.log(await instagramdl(url).catch(console.error))
console.log(await instagramdlv2(url).catch(console.error))
// Instagram Story downloader
const username = 'freefirebgid'
const story = await instagramStory(username).catch(async _ => await instagramStoryv2(username))
console.log(story)

Youtube Downloader

// Youtube downloader
import { 
    youtubedl,
    youtubedlv2 
} from '@bochilteam/scraper'
const url = 'https://youtu.be/iik25wqIuFo'
youtubedl(url).catch(_ => youtubedlv2(url)).then(({ video }) => {
    video['240p'].download().then(console.log).catch(console.error)
})
// Use async/await 
const yt = await youtubedl(url).catch(async () => await  youtubedlv2(url))
const dl_url = await yt.video['240p'].download()
console.log(dl_url)

Tiktok downloader

// Tiktok downloader
import { 
    tiktokdl,
    tiktokdlv2 
} from '@bochilteam/scraper'
// Tiktok downloader v1
const url = 'https://www.tiktok.com/@tiktok/video/6844446901010982300'
tiktokdl(url).then(console.log).catch(console.error)
// tiktokdl v2
tiktokdlv2(url).then(console.log).catch(console.error)
// async / await 
console.log(await tiktokdl(url).catch(console.error))
console.log(await tiktokdlv2(url).catch(console.error))

All in One Downloader

import {
    aiovideodl,
    savefrom,
    snapsave
} from '@bochilteam/scraper'
// Facebook video downloader
console.log(await aiovideodl('https://fb.watch/9WktuN9j-z/'))
// Twitter video downloader
console.log(await aiovideodl('https://twitter.com/jen_degen/status/1458167531869458440?s=20'))

// Tiktok downloader
console.log(await savefrom('https://www.tiktok.com/@omagadsus/video/7025456384175017243?is_from_webapp=1&sender_device=pc&web_id6982004129280116226'))
// Instagram downloader
console.log(await savefrom('https://www.instagram.com/reel/CXK49yFLtJ_/?utm_source=ig_web_copy_link'))

// Instagram downloader
console.log(await snapsave('https://www.instagram.com/reel/CXK49yFLtJ_/?utm_source=ig_web_copy_link'))
// Facebook video downloader
console.log(await snapsave('https://fb.watch/9WktuN9j-z/'))

Aksara Jawa

// Aksara jawa
import { 
    latinToAksara,
    aksaraToLatin
} from '@bochilteam/scraper'
// Latin to aksara jawa
console.log(latinToAksara('hallo rek'))
// Aksara jawa to latin
console.log(aksaraToLatin('ꦲꦭ꧀ꦭꦺꦴ​ꦫꦺꦏ꧀', { HVokal: false })) // Hvokal: false mean ꦲ will return 'ha' not vokal

Source: https://bennylin.github.io/transliterasijawa/

Primbons

// Primbons
import { 
    getZodiac,
    nomorhoki
} from '@bochilteam/scraper'
// Get zodiac
console.log(getZodiac(1, 1))
// Get nomor hoki
console.log(await nomorhoki(6213353))

Images

// Images
import {
    googleImage,
    pinterest,
    wallpaper,
    stickerTelegram,
} from '@bochilteam/scraper'
const keyword = 'minecraft'
// Google image
console.log(await googleImage(keyword))
// Pinterest image
console.log(await pinterest(keyword))
// Wallpaper
console.log(await wallpaper(keyword))
// Sticker telegram
console.log(await stickerTelegram(keyword))

Religions

// Religions
import {
    asmaulhusna, asmaulhusnajson,
    alquran,
    jadwalsholat, listJadwalSholat
} from '@bochilteam/scraper'
// Asmaul Husna
console.log(await asmaulhusna())
// Asmaul Husna Json
console.log(asmaulhusnajson) // the json will empty if you never use `asmaulhusna()`
// alquran 
console.log(await alquran())
// Jadwal Sholat
console.log(await jadwalsholat('semarang'))

Games

// Games
import {
    tebakgambar, tebakgambarjson,
    asahotak, asahotakjson
} from '@bochilteam/scraper'
// Tebak gambar
console.log(await tebakgambar())
// Tebak gambar json
console.log(tebakgambarjson) // the json will empty if you never use `tebakgambar()`
// Asahotak
console.log(await asahotak())
// Asahotak json
console.log(asahotakjson) // the json will empty if you never use `asahotak()`

News

// News
import {
    cnbindonesia,
    antaranews,
    kompas
} from '@bochilteam/scraper'
// Cnbindonesia
console.log(await cnbindonesia())
// Antaranews
console.log(await antaranews())
// Kompas
console.log(await kompas())

Encryption

// Encryption
import {
    toBase64,
    fromBase64ToString,
    randomUUID,
    randomBytes,
    createHash
} from '@bochilteam/scraper'
// To base64
const base64 = toBase64('Hello World!!')
console.log(base64)
// From base64 to string
console.log(fromBase64ToString(base64)) // 'Hello World!!'
// Random UUID
console.log(randomUUID())
// Random Bytes
console.log(randomBytes(16))
// Hash
console.log(createHash('sha256', 'Hello World!!'))

Bioskop

// Bioskop
import {
    bioskopNow,
    bioskop
} from '@bochilteam/scraper'
// Bioskop 
console.log(await bioskop())
// Bioskop Now
console.log(await bioskopNow())

Downloader

import {
    mediafiredl,
    sfilemobi,
    sfilemobiSearch,
    zippyshare
} from '@bochilteam/scraper'
// Mediafire
console.log(await mediafiredl('https://www.mediafire.com/file/gpeiucmm1xo6ln0/hello_world.mp4/file'))
// Sfilemobi
console.log(await sfilemobi('https://sfile.mobi/oGm8kAIQCs7'))
// Sfilemobi Search
console.log(await sfilemobiSearch('minecraft'))
// Zippyshare
console.log(await zippyshare('https://www53.zippyshare.com/v/Gajlfjd4/file.html'))

Chord

import {
    chord
} from '@bochilteam/scraper'
// Chord
console.log(await chord('Until i found you'))

Breaking Changes

- from v2.0.0 to v3.0.0

  • savefrom now output array of object instead of object
  • asmaulhusna optionally can take index parameter to get the asmaulhusna of that index (default is random 1-99)

- from v3.0.0 to v4.0.0

  • youtubeSearch videoCount is not on the channel anymore (deleted)

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.5%
  • JavaScript 1.5%