a5a75d3249
- Added Puppeteer with Chrome in Docker - Scraper extracts products using data attributes - Added /api/scrape endpoint - Tested: 10 products scraped from Promofarma The scraper now works with Promofarma's HTML structure which uses data-name, data-pvp attributes on article elements.
30 lines
922 B
JSON
30 lines
922 B
JSON
{
|
|
"name": "farmafinder-parapharmacy-api",
|
|
"version": "1.0.0",
|
|
"description": "Parapharmacy products API for FarmaFinder",
|
|
"main": "src/server.js",
|
|
"type": "module",
|
|
"scripts": {
|
|
"start": "node --env-file-if-exists=.env src/server.js",
|
|
"dev": "node --env-file-if-exists=.env --watch src/server.js",
|
|
"seed": "node --env-file-if-exists=.env scripts/seed.js",
|
|
"scrape": "node --env-file-if-exists=.env scripts/scrape-puppeteer.js",
|
|
"test": "NODE_OPTIONS='--experimental-vm-modules' npx jest --ci --forceExit --forceExitTimeout=30000"
|
|
},
|
|
"dependencies": {
|
|
"cors": "^2.8.5",
|
|
"express": "^4.18.2",
|
|
"express-rate-limit": "^8.5.2",
|
|
"mongoose": "^8.8.0",
|
|
"morgan": "^1.10.0",
|
|
"puppeteer": "^22.0.0",
|
|
"swagger-jsdoc": "^6.2.8",
|
|
"swagger-ui-express": "^5.0.0",
|
|
"axios": "^1.6.0"
|
|
},
|
|
"devDependencies": {
|
|
"jest": "^29.7.0",
|
|
"supertest": "^7.2.2"
|
|
}
|
|
}
|