Added stock price fetch + package-lock.json (#233)

* Added stock price fetch

* Delete package-lock.json

Co-authored-by: vinayak <itssvinayak@gmail.com>
This commit is contained in:
Tapajyoti Bose
2020-08-01 09:14:10 +05:30
committed by GitHub
parent df58a7ed5f
commit 854e70a210
2 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,30 @@
const fetch = require('node-fetch')
const jsdom = require('jsdom')
// function to get the stock price from the given symbol
async function getStockPrice (stockSymbol) {
// parsing the html page body
const url = `https://in.finance.yahoo.com/lookup?s=$${stockSymbol}`
const response = await fetch(url)
const pageBody = await response.text()
const dom = new jsdom.JSDOM(pageBody, 'text/html')
// returning the price as a number
return parseFloat(dom.window.document.querySelectorAll('td')[2].textContent.replace(/,/g, ''))
}
async function main () {
// Using async await to ensure synchronous behaviour
await getStockPrice('GOOGL')
.then(response => console.log(`GOOGL stock price: $ ${response}`))
await getStockPrice('AAPL')
.then(response => console.log(`AAPL stock price: $ ${response}`))
await getStockPrice('MSFT')
.then(response => console.log(`MSFT stock price: $ ${response}`))
await getStockPrice('AMZN')
.then(response => console.log(`AMZN stock price: $ ${response}`))
}
main()

View File

@ -8,6 +8,7 @@
"author": "TheAlgorithms",
"license": "GPL-3.0",
"dependencies": {
"jsdom": "^16.3.0",
"node-fetch": "2.6.0"
},
"devDependencies": {