Skip to content

Instantly share code, notes, and snippets.

@illixion
Forked from freimanas/tweet_image_dumper.py
Last active July 5, 2019 11:53
Show Gist options
  • Save illixion/ce580838b22b6020cdda0f354f9e1247 to your computer and use it in GitHub Desktop.
Save illixion/ce580838b22b6020cdda0f354f9e1247 to your computer and use it in GitHub Desktop.
Downloads the most recent Archillect picture and sets it as a wallpaper. Get WallpaperChanger for Windows from: https://github.com/philhansen/WallpaperChanger/releases
#!/usr/bin/env python
# encoding: utf-8
# Downloads the most recent Archillect picture and sets it as a background.
# Get WallpaperChanger from: https://github.com/philhansen/WallpaperChanger/releases
import tweepy #https://github.com/tweepy/tweepy
import urllib.request
import sys
import subprocess
#Twitter API credentials
consumer_key = ""
consumer_secret = ""
access_key = ""
access_secret = ""
def get_all_tweets(screen_name):
#Twitter only allows access to a users most recent 3240 tweets with this method
#authorize twitter, initialize tweepy
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)
#initialize a list to hold all the tweepy Tweets
alltweets = []
#make initial request for most recent tweets (200 is the maximum allowed count)
new_tweets = api.user_timeline(screen_name = screen_name,count=1)
#save most recent tweets
alltweets.extend(new_tweets)
#go through all found tweets and remove the ones with no images
outtweets = [] #initialize master list to hold our ready tweets
for tweet in alltweets:
#not all tweets will have media url, so lets skip them
try:
print(tweet.entities['media'][0]['media_url'])
except (NameError, KeyError):
# we dont want to have any entries without a media_url,
pass
else:
# got media_url - means add it to the output
outtweets.append([tweet.entities['media'][0]['media_url']])
file_name, headers = urllib.request.urlretrieve(tweet.entities['media'][0]['media_url'] + ':orig')
subprocess.run(["WallpaperChanger.exe", file_name, "4"]) #set desired wallpaper mode here
if __name__ == '__main__':
# pass in the username of the account you want to download
get_all_tweets("archillect")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment