[PYTHON] Obtenez des images par recherche par mot-clé sur Twitter

Comme le titre l'indique, il s'agit d'un script pour télécharger des images avec des mots-clés spécifiques à l'aide de l'API de recherche de Twitter.

https://github.com/Code-Hex/twippai Voici la référence.

Environnement d'exécution OS:OX X EI Capitan(10.11.5) Python:2.7.10

En plus des bibliothèques standard, vous devez les installer. requests requests_oauthlib

#!/usr/bin/env/python
# coding: utf-8

import os
import json
import time
import requests
from hashlib import md5
from requests_oauthlib import OAuth1

def md5hex(str):
	a = md5()
	a.update(str)
	return a.hexdigest()
	
folder = './data'

#Renvoie True si le chemin existe
path = os.path.exists(folder)

if not path:
	os.mkdir(folder)

consumer_key = ''#your key
consumer_secret = ''#your key
access_token = ''#your key
access_token_secret = ''#your key

#Voir ci-dessous pour l'API Twitter
#https://syncer.jp/twitter-api-matome/get/search/tweets
url = 'https://api.twitter.com/1.1/search/tweets.json'
oauth = OAuth1(consumer_key,consumer_secret,
				access_token,access_token_secret)
				#Spécification de la méthode de signature. Cela a fonctionné sans
				#signaturemethod = 'HMAC-SHA1')
				
idnum = ''
count = 1
while count <= 10:
	#Vous pouvez également utiliser les opérateurs de recherche Twitter
		query_form = {'q' : u'Filtre Metamon:images min_retweets:1',
										'lang' : 'ja',
										'count' : 100,
										'result_type' : 'recent',
										'max_id' : idnum}
		uri = requests.get(url, auth = oauth, params = query_form)
		json_loads = json.loads(uri.content)
		
		
		for data in json_loads['statuses']:
			if 'media' not in data['entities']:
				continue
			else:
				urls = data['entities']['media']
				media_urls = urls[0]['media_url']#Obtenez l'URL de l'image
				downloads = requests.get(media_urls).content #Image DL
				print media_urls + " " + str([count])
			#% S est remplacé par une chaîne de caractères
			
			#L'URL est renvoyée sous forme de chaîne de caractères hexadécimaux et utilisée comme nom de fichier.?
			filename = '%s.jpg' % md5hex(urls[0]['media_url'])
			filepath = '%s/%s' % (folder, filename)
			
			images = open(filepath, 'wb')
			images.write(downloads)
			images.close()
			count += 1
		idum = data['id']
		time.sleep(1)

Recommended Posts

Obtenez des images par recherche par mot-clé sur Twitter
Obtenez des images d'utilisateurs spécifiques sur Twitter
Recherchez et enregistrez l'image de Tomono Kafu depuis Twitter
Obtenez l'historique des tweets de célébrités sur Twitter
Obtenez des données de Twitter avec Tweepy
Nogisaka 46 Obtenez des images de blog en grattant
Enregistrer l'image du chien à partir de la recherche d'images Google
Programme pour obtenir les images préférées de Twitter
Rechercher des informations sur Pokemon Haunting sur Twitter
[Python] Téléchargez l'image d'origine à partir de la recherche d'images Google
Enregistrez automatiquement les images et les vidéos touchées par la recherche Twitter sur l'iPhone à l'aide de Pythonista3
Obtenez des images Google Recherche d'images dans leur taille d'origine
Grattage d'images ②-Obtenez des images de bing, yahoo, Flickr
Estimation des patients cancéreux à partir d'images CT par CNTK
Optimisation des paramètres par recherche de grille de Scikit Learn
Obtenir les données utilisateur Twitter
Obtenez l'image de "Suzu Hirose" par recherche d'images Google.
Rechercher sur Twitter avec Python
Appelez l'API Bing Image Search v5 depuis Python pour collecter des images