Skip to content

Instantly share code, notes, and snippets.

@meub
Last active June 17, 2024 17:33
Show Gist options
  • Save meub/767da97925d413f57f55c42ef4325d90 to your computer and use it in GitHub Desktop.
Save meub/767da97925d413f57f55c42ef4325d90 to your computer and use it in GitHub Desktop.
This is a simple script to bulk download all the photos from an Aura digital picture frame (auraframes.com). Aura provides no easy way to bulk download photos off of frames so I created this for use with Python 3.
# I created a repo for this project here: https://github.com/meub/aura-frame-downloader
@kjb
Copy link

kjb commented Dec 31, 2022

Pull request: https://gist.github.com/kjb/9c792f90a923b87978bf4e90cd2f6556/revisions to create the images/ folder if needed.

@meub
Copy link
Author

meub commented Jan 3, 2023

Thanks @kjb, I updated the gist with these changes.

@shermanpark
Copy link

Hello, the script is great, but will only download the first 1000 pics.

@doc10101
Copy link

Can you explain how to run this? When I installed Python 3 and ran the module, I get the error ModuleNotFoundError: No module named 'requests'

Thanks!

@shermanpark
Copy link

Hello,

I had to install the "requests" module after installing Python3 on Windows.

Also, I added the line: elif item["file_name"].endswith(".jpg"):
new_filename = new_filename + ".jpg"
to the script as some files were jpg

@doc10101
Copy link

Thanks! How do you install the requests module?

@shermanpark
Copy link

shermanpark commented Jan 17, 2023 via email

@meub
Copy link
Author

meub commented Jan 18, 2023

New repo for this project here: https://github.com/meub/aura-frame-downloader

@doc10101
Copy link

This is great; downloading now! The key to getting this to work was to use the command:

"python3" rather than "python" in terminal, and drag the python script from the finder window into terminal so the script could execute from the path where I had it on my system.

So my actual command line in terminal (on a Mac) was as follows:

python3 /Users/rich/Downloads/aura-frame-downloader-main/download-aura-photos.py

Thank you for creating this excellent tool!

@bourgLind
Copy link

It's been a while since I have done any kind of programming, and I'm not familiar with Python. I'm getting the following error:

= RESTART: C:\Users\ljlod\AppData\Local\Programs\Python\Python311\Scripts\download-aura-photos.py
Login Success
Traceback (most recent call last):
File "C:\Users\ljlod\AppData\Local\Programs\Python\Python311\Scripts\download-aura-photos.py", line 101, in
total = download_photos_from_aura( email, password, frame_id)
File "C:\Users\ljlod\AppData\Local\Programs\Python\Python311\Scripts\download-aura-photos.py", line 58, in download_photos_from_aura
for item in json_data["assets"]:
KeyError: 'assets'

Any suggestions would be helpful,
Thanks

@meub
Copy link
Author

meub commented Jan 18, 2023

Did you change the limit parameter to a value other than 1000? It needs to be set to 1000 or else the API will return an error

@bourgLind
Copy link

No, the limit is still 1000 as seen below:

frame_url = "https://api.pushd.com/v5/frames/" + frame_id + "/assets.json?limit=1000&side_load_users=false"

@doc10101
Copy link

As noted by another user, while the script worked, it only downloaded 1000 pictures; I have over 2000 on the frame. Is there any way to change the limiter?

@meub
Copy link
Author

meub commented Jan 18, 2023

I don't have a frame with that many photos so I can't really test this. Also, the API fails if I just increase the limit over 1000 so I'll have to investigate this further. Could you open an issue on this repo please and continue the discussion there? https://github.com/meub/aura-frame-downloader

@fredrossperry
Copy link

This is great! Thank you.

@dimitrigarder
Copy link

Nice job. Do you know the API verb to upload images? Is the Aura API documented somewhere?

@wmlandherr
Copy link

Thank you for taking the time to develop this utility. I'm sure there are many like me who are disappointed that Aura does not make downloading of photos easier.

I am able to login to my Aura account successfully (see below) but then encounter a series of errors that I don't understand. Hoping you can provide some insight.

Thanks!!

Login Success
Traceback (most recent call last):
File "C:\Users\bill\Downloads\download-aura-photos.py", line 116, in
total = download_photos_from_aura(email, password, frame_id)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\bill\Downloads\download-aura-photos.py", line 53, in download_photos_from_aura
json_data = json.loads(r.text)
^^^^^^^^^^^^^^^^^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.1264.0_x64__qbz5n2kfra8p0\Lib\json_init_.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.1264.0_x64__qbz5n2kfra8p0\Lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.1264.0_x64__qbz5n2kfra8p0\Lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment