From 1324466bdd97826f51113197e72ea864bcc730bf Mon Sep 17 00:00:00 2001 From: Karl0ss Date: Tue, 6 Jun 2023 16:42:28 +0100 Subject: [PATCH] use flaresolverr to bypass CloudFlare --- LinkGrabber.js | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/LinkGrabber.js b/LinkGrabber.js index 1ad5267..5ff5c72 100644 --- a/LinkGrabber.js +++ b/LinkGrabber.js @@ -1,13 +1,32 @@ const axios = require('axios'); var cheerio = require('cheerio'); +async function flareSolve(url) { + var data = JSON.stringify({ + "cmd": "request.get", + "url": url, + "maxTimeout": 120000 + }); + var config = { + method: 'post', + url: 'http://127.0.01:8191/v1', + headers: { + 'Content-Type': 'application/json' + }, + data: data + }; + res = await axios(config) + return res.data.solution.response +} + async function getLinksFromURL(url) { try { let links = []; - let httpResponse = await axios.get(url); + let scrape = await flareSolve(url) + // let httpResponse = await axios.get(url); - let $ = cheerio.load(httpResponse.data); + let $ = cheerio.load(scrape); let linkObjects = $('a'); // get all hyperlinks linkObjects.each((index, element) => {