From ce5bc0348c9425e403e32d528c4165d8d74fdc03 Mon Sep 17 00:00:00 2001 From: tiennm99 Date: Sat, 25 Oct 2025 23:36:25 +0700 Subject: [PATCH] feat: finish --- README.md | 2 +- package-lock.json | 78 ++++++++++++++++++++++++++++++++++++++++++++--- package.json | 2 +- src/index.js | 2 +- 4 files changed, 76 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 2ecef35..be9b47d 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,6 @@ Host [google-play-scraper](https://github.com/facundoolano/google-play-scraper) ## Usage -POST requests to `/scraper/:method` with raw JSON body parameters. +POST requests to `/:method` with raw JSON body parameters. See [google-play-scraper documentation](https://github.com/facundoolano/google-play-scraper) for method parameters. diff --git a/package-lock.json b/package-lock.json index f29582f..1009e3f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,7 @@ "name": "miti-google-play-scraper", "dependencies": { "express": "5.1.0", - "google-play-scraper": "10.0.0" + "google-play-scraper": "10.0.1" } }, "node_modules/@sindresorhus/is": { @@ -767,16 +767,17 @@ } }, "node_modules/google-play-scraper": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/google-play-scraper/-/google-play-scraper-10.0.0.tgz", - "integrity": "sha512-iRVV6HlMYOToPNTA8pub/t8rmr9zhyuaomWIkK1Nck7hwcy8+OX5u7RB7fkf6YtOfBfIlFZ04Yf28Y67vXgNkQ==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/google-play-scraper/-/google-play-scraper-10.0.1.tgz", + "integrity": "sha512-wF1a7IaN++Pfx9cgqJSJtmeSWvA18H+PSBQmEKzOkG5qtm0EjD+W6aHMGhNiiGNciVkKAYHA8HbmrwH2b183/A==", "license": "MIT", "dependencies": { "cheerio": "^1.0.0-rc.12", "debug": "^3.1.0", "got": "^11.8.6", "memoizee": "^0.4.14", - "ramda": "^0.29.0" + "ramda": "^0.29.0", + "tough-cookie": "^4.1.3" } }, "node_modules/google-play-scraper/node_modules/debug": { @@ -1237,6 +1238,18 @@ "node": ">= 0.10" } }, + "node_modules/psl": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", + "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/lupomontero" + } + }, "node_modules/pump": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", @@ -1247,6 +1260,15 @@ "once": "^1.3.1" } }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/qs": { "version": "6.14.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", @@ -1262,6 +1284,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "license": "MIT" + }, "node_modules/quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", @@ -1324,6 +1352,12 @@ "url": "https://opencollective.com/express" } }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "license": "MIT" + }, "node_modules/resolve-alpn": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", @@ -1536,6 +1570,21 @@ "node": ">=0.6" } }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "license": "BSD-3-Clause", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/type": { "version": "2.7.3", "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", @@ -1571,6 +1620,15 @@ "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "license": "MIT" }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -1580,6 +1638,16 @@ "node": ">= 0.8" } }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "license": "MIT", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", diff --git a/package.json b/package.json index 425edb3..3d50f71 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,6 @@ "type": "module", "dependencies": { "express": "5.1.0", - "google-play-scraper": "10.0.0" + "google-play-scraper": "10.0.1" } } diff --git a/src/index.js b/src/index.js index e0385b9..86b93f3 100644 --- a/src/index.js +++ b/src/index.js @@ -5,7 +5,7 @@ const app = express(); app.use(express.json({ limit: '10mb' })); -app.post('/scraper/:method', async (req, res) => { +app.post('/:method', async (req, res) => { try { const method = req.params.method; const params = req.body;