egirault / googleplay-api

Google Play Unofficial Python API - This project was a PoC and is not maintained anymore. Please feel free to fork it and improve it in any way.
879 stars 373 forks source link

Apps list returned by list.py is very incomplete #22

Open duanes opened 11 years ago

duanes commented 11 years ago

I'm comparing the list of apps returned in specific categories & sub-categories 1) by googleplay-api, or 2) by the Play Store app on the actual android device, or 3) The browser-accessed web store https://play.google.com/store/apps.

2 and 3 are identical in content and order, and covers 500 topmost apps in most categories.

1 is a very short subset of the full list, skipping some 80% of the first 25 apps and all of the tail. The largest list in any category&subcategory is 16 apps. I don't see a pattern to which apps are getting skipped. It does not seem to be affected by content-maturity level.

egirault commented 11 years ago

That's also what I noticed for some requests, but I don't really know why. I thought it might be because of the country or the SDK requirements of each app. Any idea would be welcome!

2013/2/20 duanes notifications@github.com

I'm comparing the list of apps returned in specific categories & sub-categories 1) by googleplay-api, or 2) by the Play Store app on the actual android device, or 3) The browser-accessed web store https://play.google.com/store/apps.

2 and 3 are identical in content and order, and covers 500 topmost apps in most categories.

1 is a very short subset of the full list, skipping some 80% of the first 25 apps and all of the tail. The largest list in any category&subcategory is 16 apps. I don't see a pattern to which apps are getting skipped. It does not seem to be affected by content-maturity level.

— Reply to this email directly or view it on GitHubhttps://github.com/egirault/googleplay-api/issues/22.

duanes commented 11 years ago

Deleting unneeded locale and version info from headers and user agent had no effect.

But I did notice, that all apps returned by googleplay-api for my (Pipo M8 Android 4.1.2) device were tagged to run on Android versions 1.1 & up or 1.5 & up. Whereas the topmost apps that somehow did not get returned, all required Android 2.1 or later. The Android release level info is correct for that AndroidId at the google web store and on the actual device. But somehow not correct for googleplay-api requests. There is perhaps some abi level info that should be included in the api requests, that is currently omitted or wrong.

duanes commented 11 years ago

Accidentally closed this.

The Pipo M8 appears to have a fully-working Google Play Store app, but no other Google-proprietary Services. I now wonder if its Play app was hacked onto this vendor's Android image without Google's consent and help, starting from a different tablet. Google's lists of supported devices does not include any Chinese manufacturers when shipping products under their own labels.

Debugging this would likely require tracing the https traffic from its Play app, including when it sets up a new account.

matkam commented 11 years ago

I am seeing the same problem with my Samsung Galaxy S3 running Cyanogenmod 10.1 (Android 4.2.2). Only results for very old Android versions show up with googleplay-api, while Google Play on the phone shows a full list of apps.

umito commented 10 years ago

I assume this is due to the device ID set somewhere in the code. Or the Android version somewhere.