DeviantArt
DeviantART | |
URL | http://deviantart.com/ |
Status | Online! |
Archiving status | Not saved yet |
Archiving type | Unknown |
IRC channel | #devianttart (on hackint) |
Currently there's few good solutions for backing up deviantarts, as the rest fail to build or fail to interact with the site, or just fail. Currently the best is “deviantart-gallery-downloader” by xofred.
Vital signs
Eclipse scare
In early 2020, DeviantArt moved to a new layout/style called "Eclipse". There was worry that this was a sign of decay[1] or that dislike of it[2] would result in an exodus.
NFT scare
In late 2021, during the NFT craze, there was fear that submissions from DeviantArt were being used to make NFTs, and that this would result in a user exodus.
Reintroduction of advertisements
In early 2023, DeviantArt reintroduced banner ads to their website, 4 years after removing them completely in 2019. It's possible this decision was made due to the aforementioned user exoduses.[3]
Software
deviantart-gallery-downloader
This script will get full-sized images, whereas right-clicking hasn't in the past. It will also check to see if things have already been ripped, and rip any new changes to reduce traffic.
Things needed
- git
- gem (ruby-dev)
- mechanize
- A disposable dA account with adult images turned on (to make sure all images are gotten)
Getting the software and dependencies
sudo apt-get install git ruby-dev
sudo gem update
sudo gem install mechanize
git clone https://github.com/xofred/deviantart-gallery-downloader.git
cd deviantart-gallery-downloader
Usage
To rip an entire main gallery with no organization of the images on an album basis, run:
ruby with_login.rb LOGIN-EMAIL PASSWORD "http://USERID.deviantart.com/gallery/?catpath=/"
That "/?catpath=/" on the end is important because it grabs all the images where as with the default gallery URL it does not.
For an album:
ruby with_login.rb LOGIN-EMAIL PASSWORD http://USERID.deviantart.com/ALBUM_NAME
Caveats
No SSL auth, this could be done with a slight re-jiggering of code and a dependency on some ruby-SSL dep to offload that work.
User creds are in the process name being run. Use with caution on a multi-user system. A simple ps -A will reveal your creds.
- Use a burner account until this script is made a bit more secure*
downloadiant
User:TheTechRobo made a simple script to download a user's gallery URLs.
There's currently functions for scraping an individual post and a specific gallery, but that code is not yet exposed because it sucks.
It can also be used as a module. Documentation coming soon™
Things needed
- Python 3
- requests
- Preferably, a DeviantArt account (only watermarked images are available to anonymous users)
this should preferably be a burner account
- A cookies.txt file for that account (if you don't want to log in, make it an empty file)
Usage
Usage instructions can be found at the repo.