UNPKG

@metalcamp/stockx-data

Version:

Unofficial StockX API to scrape product info utilizing requests/promises

36 lines (35 loc) 1.47 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const axios_1 = __importDefault(require("axios")); exports.default = async () => { const res = await axios_1.default.get(`https://www.stockx.com/`, { headers: { Host: "stockx.com", "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36", accept: "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", "accept-language": "en-US,en;q=0.9", "sec-ch-ua": '" Not A;Brand";v="99", "Chromium";v="90", "Google Chrome";v="90"', "sec-ch-ua-mobile": "?0", "sec-fetch-dest": "document", "sec-fetch-mode": "navigate", "sec-fetch-site": "none", "sec-fetch-user": "?1", "upgrade-insecure-requests": "1", }, }); let apiKey = ""; try { var idx = res.data.search("SEARCH_ONLY_API_KEY") + "SEARCH_ONLY_API_KEY".length + 3; while (res.data[idx] != '"') { idx++; apiKey += res.data[idx]; } } catch (err) { throw new Error("Failed to parse API key for search"); } return apiKey; };