Standard js
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
||||
node_modules
|
||||
.vscode
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
module.exports = async function(page, url) {
|
||||
await page.goto(url);
|
||||
module.exports = async function (page, url) {
|
||||
await page.goto(url)
|
||||
const element = await page.waitForSelector('b.price')
|
||||
const value = await element.evaluate(el => el.textContent);
|
||||
const value = await element.evaluate(el => el.textContent)
|
||||
return Number(value)
|
||||
}
|
||||
|
||||
20
index.js
20
index.js
@@ -1,17 +1,17 @@
|
||||
const puppeteer = require('puppeteer');
|
||||
const getPrice = require('./getPrice');
|
||||
const items = require("./items");
|
||||
const puppeteer = require('puppeteer')
|
||||
const getPrice = require('./getPrice')
|
||||
const items = require('./items')
|
||||
|
||||
const marketUrl = 'https://warframe.market/items/';
|
||||
|
||||
(async () => {
|
||||
const browser = await puppeteer.launch({ headless: false });
|
||||
const page = await browser.newPage();
|
||||
const browser = await puppeteer.launch({ headless: false })
|
||||
const page = await browser.newPage()
|
||||
|
||||
for (item of items) {
|
||||
for (const item of items) {
|
||||
let partsPrice = 0
|
||||
for (part of item.parts) {
|
||||
partsPrice += await getPrice(page, marketUrl + part.url);
|
||||
for (const part of item.parts) {
|
||||
partsPrice += await getPrice(page, marketUrl + part.url)
|
||||
}
|
||||
|
||||
const setPrice = await getPrice(page, marketUrl + item.url)
|
||||
@@ -20,5 +20,5 @@ const marketUrl = 'https://warframe.market/items/';
|
||||
}
|
||||
}
|
||||
|
||||
await browser.close();
|
||||
})();
|
||||
await browser.close()
|
||||
})()
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
module.exports = class Item {
|
||||
constructor(name) {
|
||||
constructor (name) {
|
||||
this.name = name
|
||||
this.url = `${this.name}_prime_set`
|
||||
this.parts = []
|
||||
this.addPart('blueprint')
|
||||
}
|
||||
|
||||
addPart(part) {
|
||||
addPart (part) {
|
||||
this.parts.push({ part, url: `${this.name}_prime_${part}` })
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
const Item = require("./Item");
|
||||
const Item = require('./Item')
|
||||
|
||||
module.exports = class Warframe extends Item {
|
||||
constructor(name) {
|
||||
constructor (name) {
|
||||
super(name)
|
||||
|
||||
this.addPart('systems')
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
const Warframe = require("./Warframe");
|
||||
const Warframe = require('./Warframe')
|
||||
|
||||
module.exports = [
|
||||
new Warframe('ash'),
|
||||
new Warframe('atlas'),
|
||||
new Warframe('atlas')
|
||||
]
|
||||
|
||||
3650
package-lock.json
generated
3650
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -10,5 +10,8 @@
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"puppeteer": "^13.3.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"eslint-config-standard": "^16.0.3"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user