Download all images uploaded by a specified Twitter user.
- Python 3
First, you need to install twitter-image-dl
:
$ pip install twitter-image-dl
Next, you need to generate your api key and api secret key. If you don't have them, go to Twitter Developers and create your application. After you get your api key and api secret key, create a json file like this:
{
"api_key": "your api key",
"api_secret": "your api secret key"
}
To download the images the user of id "foo" has uploaded, enter the command like the following on the command line:
$ twt_img foo -c confidentials.json
where confidentials.json
is the json file containing your api keys.
This command creates a directory called foo
and save images to that
directory.
If you want to save images to a directory other than foo
, use -d
or
--dest
argument to specify the destination.
You can specify which size of images to download using the optional argument
-s
(or --size
). There are five values you can specify:
large
medium
small
orig
thumb
If you don't specify this value, images of large
size will be downloaded
by default.
Using the --rts
flag, you can also download images contained in retweets.
Provide a number to the -l
or --limit
argument (e.g. -l 25
) to limit how
many tweets are inspected for images (starting with the most recent). Note that
if you're using --limit
without --rts
, the number of tweets inspected can
be smaller than the specified limit.
Install dependencies for testing and enter pytest
command like this:
$ git clone git@github.com:morinokami/twitter-image-downloader.git
$ cd twitter-image-downloader
$ pipenv install --dev
$ pipenv run test
Notice that you have to set KEY
and SECRET
environment variables for
testing to work.