Really basic scraper using counted divs and prefixes
This commit is contained in:
72
server.js
Normal file
72
server.js
Normal file
@@ -0,0 +1,72 @@
|
||||
var portServer = 8001;
|
||||
var securePort = 8020;
|
||||
var express = require('express');
|
||||
var app = express();
|
||||
var fs = require('fs');
|
||||
var request = require('request');
|
||||
var bodyParser = require("body-parser");
|
||||
var moment = require('moment');
|
||||
/*var fetch = require("node-fetch");*/
|
||||
app.use(bodyParser.urlencoded({ extended: false }));
|
||||
app.use(bodyParser.json());
|
||||
var cron = require('node-cron');
|
||||
var http = require('http');
|
||||
var https = require('https');
|
||||
var MongoClient = require('mongodb').MongoClient;
|
||||
var sanitize = require('mongo-sanitize');
|
||||
var cheerio = require("cheerio"); //jQuery Substitute
|
||||
|
||||
|
||||
const pug = require('pug');
|
||||
const { exec } = require('child_process');
|
||||
const path = require('path');
|
||||
|
||||
app.set('view engine', "pug")
|
||||
|
||||
app.use("/images", express.static(path.join(__dirname, '/images')));
|
||||
app.use("/static", express.static(path.join(__dirname, "/static")));
|
||||
|
||||
|
||||
app.get('/', function (req, res) {
|
||||
res.send('Hello World');
|
||||
});
|
||||
|
||||
app.get("/getPrice", async function(req, res){
|
||||
try{
|
||||
//console.log(`Request Body: \n ${JSON.stringify(req.body["instanceCount"])}`);
|
||||
let url = req.body["url"];
|
||||
let prefix = req.body["prefix"];
|
||||
let instanceCount = parseInt(req.body["instanceCount"]);
|
||||
let idName = req.body["idName"];
|
||||
let finalAnswer = "";
|
||||
|
||||
request(url, (err, resp, html) => {
|
||||
const $ = cheerio.load(html);
|
||||
finalAnswer = "9";
|
||||
$(idName).each((i, el) => {
|
||||
if(i == instanceCount){
|
||||
const item = $(el).text();
|
||||
finalAnswer = item.split(prefix).reverse()[0];
|
||||
}
|
||||
});
|
||||
console.log(finalAnswer);
|
||||
res.send(`Answer: ${finalAnswer}`);
|
||||
res.end();
|
||||
});
|
||||
}catch(e){
|
||||
console.error(e);
|
||||
res.end();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
const httpServer = http.createServer(app);
|
||||
//const httpsServer = https.createServer(credentials, app);
|
||||
|
||||
var server = httpServer.listen(portServer, function () {
|
||||
var host = server.address().address
|
||||
var port = server.address().port
|
||||
|
||||
console.log("Server is listening at http://%s:%s", host, port)
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user