0.5.9 • Published 4 years ago

setscraper v0.5.9

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

SET Scraper

The utility scraper for https://www.set.or.th.

Usage

npm install setscraper
const scraper = require('setscraper')

Get summary real-time prices of all indexes

scraper.get().then(data => {
  expect(data.updatedAt).to.be.an.instanceof(Date)
  expect(data.indexes).length.to.be.above(3)
})

Get real-time prices by index

scraper.get('SET50').then(data => {
  expect(data).to.have.property('index')
  expect(data.index).to.equal('SET50')
  expect(data.updatedAt).to.be.an.instanceof(Date)
  expect(data.stocks).have.length(50)
})

Get real-time price of the stock

scraper.get('advanc').then(data => {
  expect(data).to.have.property('updatedAt')
  expect(data.updatedAt).to.be.an.instanceof(Date)
  expect(data).to.have.property('symbol')
  expect(data.symbol).to.equal('ADVANC')
  expect(data.value).to.be.above(0)
})
{ symbol: 'ADVANC',
  updatedAt: 2017-10-20T17:30:04.000Z,
  marketStatus: 'Closed',
  sign: '',
  last: 193,
  change: 0.5,
  percentChange: 0.26,
  prior: 192.5,
  open: 192.5,
  high: 195.5,
  low: 192.5,
  volume: 9520525,
  value: 1841384720,
  average: 193.42,
  par: 1,
  ceiling: 250,
  floor: 135,
  bid: 193,
  bidVolume: 102200,
  offer: 194,
  offerVolume: 2700 }

Get all stocks in the market

scraper.getStocks().then(data => {
  expect(data).length.to.be.above(600)
  expect(data[0]).to.have.property('symbol')
  expect(data[0]).to.have.property('name')
  expect(data[0]).to.have.property('market')
})

Get historical prices of the stock

scraper.getHistoricalPrices('advanc').then(data => {
  expect(data).to.have.property('symbol')
  expect(data).to.have.property('prices')
  expect(data.symbol).to.equal('ADVANC')
  expect(data.prices).length.to.be.above(100)
  expect(data.prices[0]).to.have.property('date')
  expect(data.prices[0].date).to.be.an.instanceof(Date)
  expect(data.prices[0]).to.have.property('open')
  expect(data.prices[0].open).to.be.above(0)
})

Get highlights of the stock

scraper.getHighlights('advanc').then(data => {
  expect(data).to.have.property('symbol')
  expect(data).to.have.property('highlights')
  expect(data.symbol).to.equal('ADVANC')

  // schema = [ date, asset, liability, equity, revenue, profit, eps,
  //            roa, roe, npm, price, mktCap, pe, pbv, bvps, yield ]
  const hl = data.highlights[0]
  Object.keys(schema).forEach(key => {
    expect(hl).to.have.property(key)
  })
})
{ symbol: 'ADVANC',
  highlights:
   [ { date: '2013-12-31',
       asset: 112025710000,
       liability: 66133120000,
       equity: 45748110000,
       revenue: 143653640000,
       profit: 36274130000,
       eps: 12.2,
       roa: 44.36,
       roe: 81.42,
       npm: 25.25,
       price: 199.5,
       mktCap: 593132520000,
       pe: 16.51,
       pbv: 16.06,
       bvps: 12.42,
       yield: 5.46 },
      ...
  ]
}
0.5.9

4 years ago

0.5.8

5 years ago

0.5.6

6 years ago

0.5.5

6 years ago

0.5.4

6 years ago

0.5.3

6 years ago

0.5.2

6 years ago

0.5.1

6 years ago

0.5.0

6 years ago

0.4.0

6 years ago

0.3.0

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago