{"id":20282295,"url":"https://github.com/ne-lexa/google-play-scraper","last_synced_at":"2025-04-06T20:13:13.164Z","repository":{"id":41565989,"uuid":"186987323","full_name":"Ne-Lexa/google-play-scraper","owner":"Ne-Lexa","description":"PHP scraper to get data from Google Play ","archived":false,"fork":false,"pushed_at":"2023-05-25T08:26:21.000Z","size":740,"stargazers_count":75,"open_issues_count":12,"forks_count":34,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-04-24T16:09:58.871Z","etag":null,"topics":["android","google-play","php","php-library","scraper"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ne-Lexa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-16T08:38:18.000Z","updated_at":"2024-06-19T05:26:49.248Z","dependencies_parsed_at":"2024-06-19T05:36:39.207Z","dependency_job_id":null,"html_url":"https://github.com/Ne-Lexa/google-play-scraper","commit_stats":null,"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ne-Lexa%2Fgoogle-play-scraper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ne-Lexa%2Fgoogle-play-scraper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ne-Lexa%2Fgoogle-play-scraper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ne-Lexa%2Fgoogle-play-scraper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ne-Lexa","download_url":"https://codeload.github.com/Ne-Lexa/google-play-scraper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543595,"owners_count":20955865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","google-play","php","php-library","scraper"],"created_at":"2024-11-14T14:08:50.230Z","updated_at":"2025-04-06T20:13:13.145Z","avatar_url":"https://github.com/Ne-Lexa.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\u003cimg src=\"logo.svg\" alt=\"nelexa/google-play-scraper\" width=\"250\" height=\"250\"\u003e\u003c/h1\u003e\n\n# nelexa/google-play-scraper\n\n[![Packagist Version](https://img.shields.io/packagist/v/nelexa/google-play-scraper.svg?style=popout\u0026color=aa007f)](https://packagist.org/packages/nelexa/google-play-scraper) [![Packagist Downloads](https://img.shields.io/packagist/dt/nelexa/google-play-scraper?style=flat-square\u0026labelColor=343b41)](https://packagist.org/packages/nelexa/google-play-scraper) ![PHP from Packagist](https://img.shields.io/packagist/php-v/nelexa/google-play-scraper.svg?style=popout\u0026color=d500a0) ![License](https://img.shields.io/packagist/l/nelexa/google-play-scraper.svg?style=popout\u0026color=ff00bf)\n[![Build Status](https://github.com/Ne-Lexa/google-play-scraper/workflows/build/badge.svg)](https://github.com/Ne-Lexa/google-play-scraper/actions) [![Build Status](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/badges/build.png?b=master)](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/build-status/master) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/?branch=master) [![Code Coverage](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/Ne-Lexa/google-play-scraper/?branch=master)\n\nPHP library to scrape application data from the Google Play store.\n\n- Checking the exists of the app on Google Play.\n- Retrieving full app info.\n- Retrieving reviews on the app.\n- Retrieving a list of app permissions.\n- Retrieving a list of similar apps.\n- Retrieving a list of categories.\n- Retrieving a list of new and the best apps.\n- Retrieving a list of apps by the category.\n- Retrieving a list of apps by the developer.\n- Retrieving info about the developer.\n- Retrieving search results.\n- Downloading images for the specified size.\n\n## Installation\n```shell\ncomposer require nelexa/google-play-scraper\n```\n\n## Documentation\n[docs/README.md](https://github.com/Ne-Lexa/google-play-scraper/tree/master/docs/README.md)\n\n## Example\n```php\n// Retrieving full app info\n\n$gplay = new \\Nelexa\\GPlay\\GPlayApps($defaultLocale = 'fr_CA', $defaultCountry = 'ca');\n$appInfo = $gplay-\u003egetAppInfo('com.google.android.youtube');\n```\nResult:\n```php\nclass Nelexa\\GPlay\\Model\\AppInfo {\n  -getId(): string: \"com.google.android.youtube\"\n  -getLocale(): string: \"fr_CA\"\n  -getCountry(): string: \"ca\"\n  -getUrl(): string: \"https://play.google.com/store/apps/details?id=com.google.android.youtube\"\n  -getFullUrl(): string: \"https://play.google.com/store/apps/details?id=com.google.android.youtube\u0026hl=fr_CA\u0026gl=ca\"\n  -getName(): string: \"YouTube\"\n  -getDescription(): string: \"\"\"\n    Téléchargez l'application YouTube officielle sur votre téléphone ou tablette Android. Découvrez les contenus regardés partout dans le monde : des clip…\n    \"\"\"\n  -getIcon(): Nelexa\\GPlay\\Model\\GoogleImage: {\n    -__toString(): string: \"https://play-lh.googleusercontent.com/lMoItBgdPPVDJsNOVtP26EKHePkwBg-PkuY9NOrc-fumRtTFP4XhpUNk_22syN4Datc\"\n    -getUrl(): string: \"https://play-lh.googleusercontent.com/lMoItBgdPPVDJsNOVtP26EKHePkwBg-PkuY9NOrc-fumRtTFP4XhpUNk_22syN4Datc\"\n    -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/lMoItBgdPPVDJsNOVtP26EKHePkwBg-PkuY9NOrc-fumRtTFP4XhpUNk_22syN4Datc=s0\"\n    -getBinaryImageContent(): string: …\n  }\n  -getScreenshots(): array: array:5 [\n    0 =\u003e class Nelexa\\GPlay\\Model\\GoogleImage {\n      -__toString(): string: \"https://play-lh.googleusercontent.com/ysXRzV6uIprDW4_cTODTc3RICYKV57YAzNv7zHeAYpwJpe2lC6Wdx-GuCoSgzCCDwuc\"\n      -getUrl(): string: \"https://play-lh.googleusercontent.com/ysXRzV6uIprDW4_cTODTc3RICYKV57YAzNv7zHeAYpwJpe2lC6Wdx-GuCoSgzCCDwuc\"\n      -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/ysXRzV6uIprDW4_cTODTc3RICYKV57YAzNv7zHeAYpwJpe2lC6Wdx-GuCoSgzCCDwuc=s0\"\n      -getBinaryImageContent(): string: …\n    }\n    1 =\u003e class Nelexa\\GPlay\\Model\\GoogleImage {\n      -__toString(): string: \"https://play-lh.googleusercontent.com/YshbPqiMzsf-UJbTlLhgOXriJw2X_A0HIZ7AX1kfuyk1IkfWjHmTWmYMG0t9pJW3yqU\"\n      -getUrl(): string: \"https://play-lh.googleusercontent.com/YshbPqiMzsf-UJbTlLhgOXriJw2X_A0HIZ7AX1kfuyk1IkfWjHmTWmYMG0t9pJW3yqU\"\n      -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/YshbPqiMzsf-UJbTlLhgOXriJw2X_A0HIZ7AX1kfuyk1IkfWjHmTWmYMG0t9pJW3yqU=s0\"\n      -getBinaryImageContent(): string: …\n    }\n    …\n  ]\n  -getScore(): float: 3.8564255\n  -getPriceText(): ?string: null\n  -isFree(): bool: true\n  -getInstallsText(): string: \"10 000 000 000+\"\n  -jsonSerialize(): array: …\n  -getDeveloper(): ?Nelexa\\GPlay\\Model\\Developer: {\n    -getId(): string: \"5700313618786177705\"\n    -getUrl(): string: \"https://play.google.com/store/apps/dev?id=5700313618786177705\"\n    -getName(): string: \"Google LLC\"\n    -getDescription(): ?string: null\n    -getWebsite(): ?string: \"https://support.google.com/youtube/topic/2422554?rd=1\"\n    -getIcon(): ?Nelexa\\GPlay\\Model\\GoogleImage: null\n    -getCover(): ?Nelexa\\GPlay\\Model\\GoogleImage: null\n    -getEmail(): ?string: \"ytandroid-support@google.com\"\n    -getAddress(): ?string: \"1600 Amphitheatre Parkway, Mountain View 94043\"\n    -asArray(): array: …\n    -jsonSerialize(): array: …\n  }\n  -getDeveloperName(): string: \"Google LLC\"\n  -getSummary(): string: \"Regardez vos vidéos, chaînes et playlists préférées où que vous soyez.\"\n  -getTranslatedFromLocale(): mixed: null\n  -getCover(): ?Nelexa\\GPlay\\Model\\GoogleImage: {\n    -__toString(): string: \"https://play-lh.googleusercontent.com/vA4tG0v4aasE7oIvRIvTkOYTwom07DfqHdUPr6k7jmrDwy_qA_SonqZkw6KX0OXKAdk\"\n    -getUrl(): string: \"https://play-lh.googleusercontent.com/vA4tG0v4aasE7oIvRIvTkOYTwom07DfqHdUPr6k7jmrDwy_qA_SonqZkw6KX0OXKAdk\"\n    -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/vA4tG0v4aasE7oIvRIvTkOYTwom07DfqHdUPr6k7jmrDwy_qA_SonqZkw6KX0OXKAdk=s0\"\n    -getBinaryImageContent(): string: …\n  }\n  -getCategory(): ?Nelexa\\GPlay\\Model\\Category: {\n    -getId(): string: \"VIDEO_PLAYERS\"\n    -getName(): string: \"Lecteurs vidéo et éditeurs\"\n    -isGamesCategory(): bool: false\n    -isFamilyCategory(): bool: false\n    -isApplicationCategory(): bool: true\n    -asArray(): array: …\n    -jsonSerialize(): array: …\n  }\n  -getCategoryFamily(): ?Nelexa\\GPlay\\Model\\Category: null\n  -getVideo(): ?Nelexa\\GPlay\\Model\\Video: null\n  -getRecentChanges(): ?string: \"Pour plus d'informations sur les nouvelles fonctionnalités et leur utilisation, consultez la documentation et les notifications intégrées au produit.\"\n  -isEditorsChoice(): bool: false\n  -getInstalls(): int: 11923110578\n  -getHistogramRating(): Nelexa\\GPlay\\Model\\HistogramRating: {\n    -getFiveStars(): int: 28666549\n    -getFourStars(): int: 4783408\n    -getThreeStars(): int: 7638282\n    -getTwoStars(): int: 14217650\n    -getOneStar(): int: 83304870\n    -asArray(): array: …\n    -jsonSerialize(): array: …\n  }\n  -getPrice(): float: 0.0\n  -getCurrency(): string: \"CAD\"\n  -isContainsIAP(): bool: false\n  -getOffersIAPCost(): ?string: null\n  -isContainsAds(): bool: true\n  -getSize(): mixed: null\n  -getAppVersion(): ?string: null\n  -getAndroidVersion(): ?string: null\n  -getMinAndroidVersion(): ?string: null\n  -getContentRating(): ?string: \"\"\n  -getPrivacyPoliceUrl(): ?string: \"http://www.google.com/policies/privacy\"\n  -getReleased(): ?DateTimeInterface: @1287601948 {\n    date: 2010-10-20T19:12:28+00:00\n  }\n  -getUpdated(): ?DateTimeInterface: @1654299141 {\n    date: 2022-06-03T23:32:21+00:00\n  }\n  -getNumberVoters(): int: 138611767\n  -getNumberReviews(): int: 142747\n  -getReviews(): array: array:40 [\n    0 =\u003e class Nelexa\\GPlay\\Model\\Review {\n      -getId(): string: \"gp:AOqpTOEMQEAUOLXyd5CBETDY47q0t0LfiCNl0igi4p9DscGE10LQedLKFr6WPPvGFbQ4rTqKu_vR9bf1k2Dl6g\"\n      -getUrl(): mixed: \"\"\n      -getUserName(): string: \"Boromir et Tilou\"\n      -getText(): string: \"Cette application est excellente, cependant il y a quelque problématique niveau pub! Par exemple : il arrive des fois que je regarde une vidéo qui dur…\"\n      -getAvatar(): Nelexa\\GPlay\\Model\\GoogleImage: {\n        -__toString(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiEuZYl4opeaRXLTVlEPX09UT7O1pu28Xibw2YO=s64\"\n        -getUrl(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiEuZYl4opeaRXLTVlEPX09UT7O1pu28Xibw2YO=s64\"\n        -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiEuZYl4opeaRXLTVlEPX09UT7O1pu28Xibw2YO=s0\"\n        -getBinaryImageContent(): string: …\n      }\n      -getDate(): ?DateTimeInterface: @1652904683 {\n        date: 2022-05-18T20:11:23+00:00\n      }\n      -getScore(): int: 4\n      -getCountLikes(): int: 1929\n      -getReply(): ?Nelexa\\GPlay\\Model\\ReplyReview: null\n      -getAppVersion(): ?string: \"17.19.34\"\n      -asArray(): array: …\n      -jsonSerialize(): array: …\n    }\n    1 =\u003e class Nelexa\\GPlay\\Model\\Review {\n      -getId(): string: \"gp:AOqpTOEMsRD995sFxjIRu23yRV7za1PH0O2IKHmydCwK9CyQuf4IhL6WNyMsS7ZoEFcdTSI6-akTQAoHGQmzXQ\"\n      -getUrl(): mixed: \"\"\n      -getUserName(): string: \"Mathias Blouin\"\n      -getText(): string: \"Beaucoup trop de publicités, sous-titres qui se mettent tout seul, la résolution n'est JAMAIS sur la plus haute et c'est assez long à changer, des foi…\"\n      -getAvatar(): Nelexa\\GPlay\\Model\\GoogleImage: {\n        -__toString(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiIFpEtppYtvFbeki1HKoLOHfLOuDfPFOtuvoBFew=s64\"\n        -getUrl(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiIFpEtppYtvFbeki1HKoLOHfLOuDfPFOtuvoBFew=s64\"\n        -getOriginalSizeUrl(): string: \"https://play-lh.googleusercontent.com/a-/AOh14GiIFpEtppYtvFbeki1HKoLOHfLOuDfPFOtuvoBFew=s0\"\n        -getBinaryImageContent(): string: …\n      }\n      -getDate(): ?DateTimeInterface: @1652148284 {\n        date: 2022-05-10T02:04:44+00:00\n      }\n      -getScore(): int: 3\n      -getCountLikes(): int: 2569\n      -getReply(): ?Nelexa\\GPlay\\Model\\ReplyReview: null\n      -getAppVersion(): ?string: \"17.17.34\"\n      -asArray(): array: …\n      -jsonSerialize(): array: …\n    }\n    …\n  ]\n  -asArray(): array: …\n}\n```\n\n# Changelog\n\nChanges are documented in the [releases page](https://github.com/Ne-Lexa/google-play-scraper/releases).\n\n# License\n\nThe library is open-sourced software licensed under the [MIT License](https://github.com/Ne-Lexa/google-play-scraper/blob/master/LICENSE).\n\n# Donation\n* USDT TRC-20 - `TAR6uqMAMCpTUemy9RP26zrTpJM1rtECxE`\n* USDT ERC-20 - `0xA6c9776996f16A0C473Dec464A5608a7BCD3BB81`\n* BTC - `16Aavqejcdy2rnyNLLZ1FN4cQEdWXQE3YJ`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fne-lexa%2Fgoogle-play-scraper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fne-lexa%2Fgoogle-play-scraper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fne-lexa%2Fgoogle-play-scraper/lists"}