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.
878 stars 374 forks source link

Error downloading APKS #31

Open NulByte opened 10 years ago

NulByte commented 10 years ago

I have tried to download APK's with the API.

./download.py com.ideashower.readitlater.pro for an example.

in my config.py I added email , password and Android ID.

and the traceback is: authSubToken: DQAAAMYAAABKwzq7PQ19uuKFxs5ZA5Qt6o7XdP5YyxnpXqczDJpVe-EjR4BYDYiBX8ZCABV2FAJs_8IHgF7FC0vcWzbJfZkoj_j_lpr-njXu8oPyx5RTmnqgx95BAjTBMWui-iqfnT1N9jgEy5r0KKVS7GERdr_Tobsj_LW4cpnnwjeJT8VZf79bMjPTtdVe7p0rsUQyfB0lTIqWOHDv1YXtMc5zFcr7nEohw7vu5_udMVxIYU0RVsnPkuH78Y-TVimRS--xU6BcLvxJ-Zy8QQF5QVwJ3F-5_HdkQs Downloading 0.0bytes... Traceback (most recent call last): File "download.py", line 37, in data = api.download(packagename, vc, ot) File "/home/me/tools/PlayStoreDownloader/python-api/googleplay.py", line 268, in download cookie = message.payload.buyResponse.purchaseStatusResponse.appDeliveryData.downloadAuthCookie[0] File "/usr/lib/python2.7/dist-packages/google/protobuf/internal/containers.py", line 64, in getitem return self._values[key] IndexError: list index out of range

I tried to debug it a bit, I saw the returning version code is 0 instead of certain number, but I failed even when I tried to enter it manually. When debugging it: vc = 0 (Version Code) ot = 1 (Offer Type)

which is not really reasonable.

if I will find the solution I will post it. does anyone knows the problem?

Printed message from download function: commands { displayErrorMessage: "Error retrieving information from server. [RPC:S-5:AEC-0]" }

jeffhiltz commented 10 years ago

This looks to be a duplicate of issue #11. You'll find more information there but unfortunately not a solution. (At least not yet.)

NulByte commented 10 years ago

Indeed , I examined the problem and had a further researching on the web. my account has been somehow disabled downloading apks. the immediate solution for this bug, creating new google account, assigning it to a device. getting that deviceId and using it.

Thank you for your help. Consider adding handling such a problem, at least showing a debug trace or something. if you want, I will post a code for such handling tomorrow.

jf86 commented 10 years ago

I got this working downloading "Android Device ID" and putting GSF ID KEY (not Android ID) in ANDROID_ID field at config.py.

richardg867 commented 10 years ago

For future reference: I also had a RPC:S-5 error. It happens when you're trying to download an app using an Android ID that is not associated to the Google account. The only solution is to sign in to the Google account using the device you took the Android ID from.

windofeng commented 10 years ago

To use Google Play API stably, you should use GSF ID KEY instead of android_id or device_id (such as IMEI). GSF ID KEY can be obtained from the app named "Android Device ID".