It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Does this still work? TLDR: Did GOG adjust their reCAPTCHA authentication to screw this up?

I've been using it for about two years I think but it hasn't worked correctly for the last month or so. I updated Python at one point for another project, so I'm unsure if that is the culprit or if something changed on GOG's end.

I get a couple of errors when I run the command and I'm sure those are related to the update. RequestsDependencyWarning: urllib3 (1.26.9) or chardet (5.1.0)/charset_normalizer (2.0.12) doesn't match a supported version!
warnings.warn("urllib3 ({}) or chardet ({})/charset_normalizer ({}) doesn't match a supported "
13:45:53 | loading local manifest...
13:45:55 | loading local resume manifest...
13:45:55 | fetching game product data (page 1)...
13:45:57 | failed to load product data (are you still logged in?)

It's that last error that is causing the problem I think. I've tried several times across different days to re-authenticate and gogrepoc always says "cannot continue, gog is asking for a reCAPTCHA :( try again in a few minutes."

I have 2 step turned on. I know Google has been pushing out AI generated art to these reCAPTCHA's now, so I wonder if something has changed on the backend.
Post edited April 25, 2023 by guynamedbilly
avatar
guynamedbilly: gogrepoc always says "cannot continue, gog is asking for a reCAPTCHA :( try again in a few minutes."
That happened to me a few days ago. I opened gog-cookies.dat and changed all of the dates to ones in the future and it started working again.
avatar
guynamedbilly: Does this still work? TLDR: Did GOG adjust their reCAPTCHA authentication to screw this up?

I've been using it for about two years I think but it hasn't worked correctly for the last month or so. I updated Python at one point for another project, so I'm unsure if that is the culprit or if something changed on GOG's end.

I get a couple of errors when I run the command and I'm sure those are related to the update. RequestsDependencyWarning: urllib3 (1.26.9) or chardet (5.1.0)/charset_normalizer (2.0.12) doesn't match a supported version!
warnings.warn("urllib3 ({}) or chardet ({})/charset_normalizer ({}) doesn't match a supported "
13:45:53 | loading local manifest...
13:45:55 | loading local resume manifest...
13:45:55 | fetching game product data (page 1)...
13:45:57 | failed to load product data (are you still logged in?)

It's that last error that is causing the problem I think. I've tried several times across different days to re-authenticate and gogrepoc always says "cannot continue, gog is asking for a reCAPTCHA :( try again in a few minutes."

I have 2 step turned on. I know Google has been pushing out AI generated art to these reCAPTCHA's now, so I wonder if something has changed on the backend.
I probably won't have a chance to check into this until Saturday but acknowleding I saw this. Are you on the latest version of gogrepoc ?
Post edited April 26, 2023 by Kalanyr
avatar
guynamedbilly: gogrepoc always says "cannot continue, gog is asking for a reCAPTCHA :( try again in a few minutes."
avatar
HappyPunkPotato: That happened to me a few days ago. I opened gog-cookies.dat and changed all of the dates to ones in the future and it started working again.
Thank you! I just tried that and it's working again.
avatar
guynamedbilly: gogrepoc always says "cannot continue, gog is asking for a reCAPTCHA :( try again in a few minutes."
avatar
HappyPunkPotato: That happened to me a few days ago. I opened gog-cookies.dat and changed all of the dates to ones in the future and it started working again.
Hmm. The latest version of gogrepoc doesn't actually use gog-cookies.dat anymore (moved to tokens a while ago) so that shouldn't do anything, perhaps you're still on an older version ?
avatar
HappyPunkPotato: That happened to me a few days ago. I opened gog-cookies.dat and changed all of the dates to ones in the future and it started working again.
avatar
Kalanyr: Hmm. The latest version of gogrepoc doesn't actually use gog-cookies.dat anymore (moved to tokens a while ago) so that shouldn't do anything, perhaps you're still on an older version ?
Probably. I haven't been keeping up to date on it's developments since I installed it. It's downloading updates right now, so I don't suppose I can check, but I'm certain it's old.

The readme says gamma.
Post edited April 26, 2023 by guynamedbilly
avatar
Kalanyr: Hmm. The latest version of gogrepoc doesn't actually use gog-cookies.dat anymore (moved to tokens a while ago) so that shouldn't do anything, perhaps you're still on an older version ?
avatar
guynamedbilly: Probably. I haven't been keeping up to date on it's developments since I installed it. It's downloading updates right now, so I don't suppose I can check, but I'm certain it's old.

The readme says gamma.
gamma is just the name for the version after woolymammoth stopped maintaining it. You need to check the update date of the gogrepoc.py file in the master branch of the git ( https://github.com/Kalanyr/gogrepoc ) . Auto-updating is on my to do list but I'm not really adding new features at the moment (I'm working on other projects).
avatar
guynamedbilly: Probably. I haven't been keeping up to date on it's developments since I installed it. It's downloading updates right now, so I don't suppose I can check, but I'm certain it's old.

The readme says gamma.
avatar
Kalanyr: gamma is just the name for the version after woolymammoth stopped maintaining it. You need to check the update date of the gogrepoc.py file in the master branch of the git ( https://github.com/Kalanyr/gogrepoc ) . Auto-updating is on my to do list but I'm not really adding new features at the moment (I'm working on other projects).
Cool thanks. It was March 21 2022. If all the dependencies are correct, could I just replace the gogrepoc.py file with the newest one and all the previous batch files I made still work? I'm assuming I'd have to re-authenticate again because of the use of tokens?

Thanks for maintaining the tool. I was manually downloading updates for my too big gog library before.
avatar
Kalanyr: gamma is just the name for the version after woolymammoth stopped maintaining it. You need to check the update date of the gogrepoc.py file in the master branch of the git ( https://github.com/Kalanyr/gogrepoc ) . Auto-updating is on my to do list but I'm not really adding new features at the moment (I'm working on other projects).
avatar
guynamedbilly: Cool thanks. It was March 21 2022. If all the dependencies are correct, could I just replace the gogrepoc.py file with the newest one and all the previous batch files I made still work? I'm assuming I'd have to re-authenticate again because of the use of tokens?

Thanks for maintaining the tool. I was manually downloading updates for my too big gog library before.
Should do but the recent Python 3 deprecations now that Python 2 is officially EOL mean support is getting way more brittle for older versions of Python (or super new versions unless I update earlier than usual (I usually wait until a bunch of key modules are ready) or get a heads-up ). I'd expect things to stabilise a bit in the next couple of releases as that all makes its way through.
avatar
guynamedbilly: Cool thanks. It was March 21 2022. If all the dependencies are correct, could I just replace the gogrepoc.py file with the newest one and all the previous batch files I made still work? I'm assuming I'd have to re-authenticate again because of the use of tokens?

Thanks for maintaining the tool. I was manually downloading updates for my too big gog library before.
avatar
Kalanyr: Should do but the recent Python 3 deprecations now that Python 2 is officially EOL mean support is getting way more brittle for older versions of Python (or super new versions unless I update earlier than usual (I usually wait until a bunch of key modules are ready) or get a heads-up ). I'd expect things to stabilise a bit in the next couple of releases as that all makes its way through.
Cool. I'll give it a try. Thanks again.
avatar
Genericjohndoe: Silly me has a new question (An i am not sure if i did not ask the same some weeks or months ago)
I want additionally to the stuff we can download the neat little picture ( Like https://images-2.gog-statics.com/12a2180e6c2c61a6cd2d8de68e3d58a15ac2658fede204a5aa13091cba0e770e.jpg for ABZU) downloaded and added to the game folder for a later offline-html-index-library-thingy... I see that there are the links already in the dat, has anyone a code (chatgpt is still to stupid or i ask the wrong questions) which could solve this or could you, blessed Kalanyr, add an option to your script?
Want to run a potential implementation by you since you proposed this:

Current constraints are: I need to preserve the URL name (which serves as a quick check for if GOG has changed the image), raw .jpg is a valid extra type, so I can't exempt jpgs in general from being deleted by the cleanup process.

Current idea is to create an !images folder, which is exempted from cleanup and contains 2 folders image_url and bg_url , and inside those is a folder structure mirroring GOG so eg a folder called images-3.gog-statics.com with a file in it called eg f9c802e33d6e51cf39061a1d44240be35320eaea564f49b1871ee80cbd313c46 (probably a jpg but I'll extract the file type from the MIME header if that info is available). Each time a download is done these are treated like !info.text and a quick check is done that a matching file exists and if it doesn't the current structure is nuked and replaced with the new version.

Does that work for you ?

ETA - Seems like they are always JPGs because the returned URL for the images is actually invalid and requires .jpg to be appended to be valid. A+ work GOG.

ETA2 - I've implemented this and it works so far in local testing. Going to have to make it optional though, since it's a massive drag on download speed the first time it's run clean and some people won't want these. Still happy to change things based on feedback, the harder bit was the structure for the pulling out the data and setting up how to save it and that's done now so location / filename changes are easier.

ETA3 - I clearly need to not trust GOG as well *heh*, Bioshock (which has been replaced with the Remastered version) still has a bg_url set but the file no longer exists. But that's what local testing is for.
Post edited May 04, 2023 by Kalanyr
----

Okay pushed the updated version to dev branch on the GItHub repository ( https://github.com/Kalanyr/gogrepoc/tree/dev )

change log is

Don't treat 503 as a permanent error (GOG uses this as a temporarily overloaded error)

Add -covers and -backgrounds parameters to download command , they download cover images and background images (respectively) for each game to be downloaded.

Change automatic cleanup of !downloading directory as part of download command to only delete stuff not in the manifest at all (instead of not in the current queue) to allow interrupting a download, downloading something else and then resuming a partial download.

Add clear_partial_downloads command to remove everything from !downloading , in case something gets stuck/forgotten as a result of the previous.

Fixed failed to find token error message to check for both KeyError and AttributeErrror

As long as there's no error reports for a few days, I'll roll it to master.
Post edited May 05, 2023 by Kalanyr
Thank you for the inclusion of the covers and backgrounds!

I will rebuild the dat-file today an shove the covers via -covers into my gamefolders.

PS: Yeah, the not-exisiting-*.jpg-appendix did make me puke, too. I could extract and reformat the correct urls with the correct format from the dat-file some weeks ago but because of real-life i could not apply an download-routine (I did shove the links into jdownloader) which would throw the covers into the corret folders.

Thank you again for your work and help!
Post edited May 08, 2023 by Genericjohndoe
avatar
Genericjohndoe: Thank you for the inclusion of the covers and backgrounds!

I will rebuild the dat-file today an shove the covers via -covers into my gamefolders.

PS: Yeah, the not-exisiting-*.jpg-appendix did make me puke, too. I could extract and reformat the correct urls with the correct format from the dat-file some weeks ago but because of real-life i could not apply an download-routine (I did shove the links into jdownloader) which would throw the covers into the corret folders.

Thank you again for your work and help!
Just as a heads-up you don't need to rebuild the .dat file, the data was already recorded in the manifest, just not used. If you stick -covers on all your download.commands it should grab them for each game as it comes up. There's no noticeable loss of performance except for when the covers need (re)downloading for a game because the check is so trivial.
The update has been merged into master now.