Я использую пакет nodejs для очистки данных продукта от ali express.
const puppeteer = require('puppeteer');
const cheerio = require('cheerio');
const Variants = require('./variants');
const Feedback = require('./feedback');
async function AliexpressProductScraper(productId, feedbackLimit) {
const FEEDBACK_LIMIT = feedbackLimit || 10;
const browser = await puppeteer.launch();
const page = await browser.newPage();
/** Scrape the aliexpress product page for details */
await page.goto(`https://www.aliexpress.com/item/${productId}.html`);
const aliExpressData = await page.evaluate(() => runParams);
// console.log(aliExpressData);
const data = aliExpressData.data;
Код отлично работает на моей ма c, но не на сервере. На сервере, когда я запускаю его, я получаю следующую ошибку
Error: Evaluation failed: ReferenceError: runParams is not defined
at __puppeteer_evaluation_script__:1:8
at ExecutionContext._evaluateInternal (/home/forge/scraper/node_modules/puppeteer/lib/ExecutionContext.js:122:13)
at process._tickCallback (internal/process/next_tick.js:68:7)
-- ASYNC --
at ExecutionContext.<anonymous> (/home/forge/scraper/node_modules/puppeteer/lib/helper.js:111:15)
at DOMWorld.evaluate (/home/forge/scraper/node_modules/puppeteer/lib/DOMWorld.js:112:20)
at process._tickCallback (internal/process/next_tick.js:68:7)
-- ASYNC --
at Frame.<anonymous> (/home/forge/scraper/node_modules/puppeteer/lib/helper.js:111:15)
at Page.evaluate (/home/forge/scraper/node_modules/puppeteer/lib/Page.js:833:43)
at Page.<anonymous> (/home/forge/scraper/node_modules/puppeteer/lib/helper.js:112:23)
at AliexpressProductScraper (/home/forge/scraper/scraper/src/aliexpressProductScraper.js:14:37)
at process._tickCallback (internal/process/next_tick.js:68:7)
По какой-то причине он не выбрасывает runParams, не определенный в пакете macos, который я использую https://github.com/sudheer-ranga/aliexpress-product-scraper