deblan-scraper

1.3.0 • Public • Published

Scraper

Build Status

This project is a basic tool to scrap a data from a website using a CSS selector.

For example, if you want to retrieve the number of a project's releases hosted on github:

With CLI

node src/cli.js \
  --url https://github.com/foo/bar \
  --selector '.repository-content .numbers-summary li:nth-child(4) a' \
  --tags \
  --breaks \
  --spaces \
  --breaks \
  --trim

...will show XXX releases.

More help with node src/cli.js --help.

With code

const scraper = require('deblan-scraper')

const options = {
  url: 'https://github.com/foo/bar',
  acceptAllStatus: false, // Optional, default is `false`
  method: 'GET', // Optional, default is `GET`
}

const isMultiple = false // get the first result, `true` to get an array of results

const selector = '.repository-content .numbers-summary li:nth-child(4) a'

const filters = {
  tags: null, // Removes tags. You can specify the tags to remove (separated by comma)
  breaks: null, // Removes breaks (\n, \r)
  spaces: null, // Replaces 2 successive spaces by 1, except breaks
  trim: null, // Strips whitespaces from the beginning and end of the value
}

scraper(
  options,
  selector,
  filters,
  function(value) {
    console.log(value)
  },
  function(error) {
    console.log(error)
  },
  isMultiple
)

Installation

Requirements:

  • node >= 10
  • yarn
$ git clone https://gitnet.fr/deblan/scraper.git
$ cd scraper
$ yarn

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.3.0
    1
    • latest

Version History

Package Sidebar

Install

npm i deblan-scraper

Weekly Downloads

1

Version

1.3.0

License

ISC

Unpacked Size

10.2 kB

Total Files

15

Last publish

Collaborators

  • deblan