Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Booru

A basic, JSON booru

example
const Booru = require('booru')
// Aliases are supported
const e9 = Booru('e9')

// You can then search the site
const imgs = await e9.search(['cat', 'cute'], {limit: 3})

// And use the images
imgs.forEach(i => console.log(i.fileUrl))

// Or access other methods on the Booru
e9.postView(imgs[0].id)

Hierarchy

Index

Constructors

Private constructor

  • new Booru(site: Site, credentials?: object | null): Booru
  • Create a new booru from a site

    Parameters

    • site: Site

      The site to use

    • Default value credentials: object | null = null

      Credentials for the API (Currently not used)

    Returns Booru

Properties

credentials

credentials: any

The credentials to use for this booru

domain

domain: string

The domain of the booru

site

site: Site

The site object representing this booru

Methods

Protected doSearchRequest

  • doSearchRequest(tags: string[] | string, __namedParameters?: { limit: number; page: number; random: boolean; uri: null | string }): Promise<any>
  • The internal & common searching logic, pls dont use this use .search instead

    Parameters

    • tags: string[] | string

      The tags to search with

    • Default value __namedParameters: { limit: number; page: number; random: boolean; uri: null | string } = {}
      • limit: number
      • page: number
      • random: boolean
      • uri: null | string

    Returns Promise<any>

Protected parseSearchResult

  • parseSearchResult(result: any, __namedParameters: { fakeLimit: undefined | number; limit: undefined | number; page: undefined | number; random: undefined | false | true; tags: undefined | string | string[] }): SearchResults
  • Parse the response from the booru

    Parameters

    • result: any

      The response of the booru

    • __namedParameters: { fakeLimit: undefined | number; limit: undefined | number; page: undefined | number; random: undefined | false | true; tags: undefined | string | string[] }
      • fakeLimit: undefined | number
      • limit: undefined | number
      • page: undefined | number
      • random: undefined | false | true
      • tags: undefined | string | string[]

    Returns SearchResults

    The results of this search

postView

  • postView(id: string | number): string
  • Gets the url you'd see in your browser from a post id for this booru

    Parameters

    • id: string | number

      The id to get the postView for

    Returns string

    The url to the post

search

  • search(tags: string | string[], __namedParameters?: { limit: number; page: number; random: boolean }): Promise<SearchResults>
  • Search for images on this booru

    Parameters

    • tags: string | string[]

      The tag(s) to search for

    • Default value __namedParameters: { limit: number; page: number; random: boolean } = {}
      • limit: number
      • page: number
      • random: boolean

    Returns Promise<SearchResults>

    The results as an array of Posts

Generated using TypeDoc