For the task that requires a python script that downloads GCI data, does the data have to include task submissions like given in the example link
@Sean Hey Sean, I have finished the knight, but I'm still on the python script task and I've not a clue as to how to download task submissions with the API. I've read the API and I only saw it returns JSONs with info about tasks and task instances, but not the files submitted to each task instance.
Any ideas?
For the task that requires a python script that downloads GCI data, does the data have to include task submissions like given in the example link
unless there's strictly no way to get that data, but yes -- the entire point of that task is to download all of the files that have been uploaded.
cant seem to find a way to download submission data through the api though, so i've submitted my knight task first
Any ideas?
There was support/contact information for the API, so feel free to contact them on how to get at the files submitted.
So, I've just contacted the GCI API support and it turns out the API does not support this
did robert give any hints?
is there perhaps a link to the GCI site in the API, perhaps a suburl?
where the links could be scraped?
or the whole page for that matter, wget style
From the past submissions it does seem like the html page was scraped
Not much, I only got "The API does not support this.
(And it is highly unlikely to support it this year.)
-R
"
the past ones were scraped, but that was a completely different system
can you link me to the task description?
note that the task was broken into two parts -- first part is the basic instance info
second task was to download the data files (somehow)
https://codein.withgoogle.com/dashboard/tasks/4537825565343744/
I just updated the descripiton
@Jeff Sieu so yeah, I see there is task_instance_url so that could be scraped using urllib or wget: https://stackoverflow.com/questions/24346872/python-equivalent-of-a-given-wget-command
@Sean, seems like the error is probably related to proxies though I've no idea about the specifics
Since the error is due to max retries exceeded (default is 0), maybe we can try setting the max_retries to a high number (maybe 200) using this:
from requests.adapters import HTTPAdapter
s = requests.Session()
s.mount(url, HTTPAdapter(max_retries=200))
Referencing https://stackoverflow.com/questions/15431044/can-i-set-max-retries-for-requests-request
Last updated: Jan 10 2025 at 00:48 UTC