El proceso se explica a cabalidad en el vídeo a continuación
Básicamente en este post encontrarás scripts de python que te permitirán:
- Dejar de seguir a quien no te sigue con pregunta de sí o no en consola
- Dejar de seguir a quien no te sigue sin pregunta
- Seguir a quien te sigue
- Enviar tweet grupal a varias cuentas
- Dar retweet automático por hashtag
- Dar like automático por hashtag
Cabe aclarar que para que estos script funcionen debes crear tu aplicación en Twitter y configurar con tus credenciales un documento de extensión py.
En este blog post enlacé con los 4 primeros script al documento credenciales.py en los dos últimos se deben ingresar las credenciales en cada documento, puedes ver los detalles de estos dos últimos script en el siguiente vídeo:
En una publicación previa bastante popular explico como aumentar tus seguidores en Twitter utilizando dos script en Javascript.
En este caso no se diligencia ningún permiso, se accede a la página de quienes vas a seguir se ejecuta el script y ya.
Twitter ha ido cambiando y por estos días es necesario instalar una extensión de chrome para correr la versión anterior.
Esta opción estará activa hasta el 1 de Junio del presente año y por esto me vi en la necesidad de actualizar los procesos para que se pueda seguir optimizando tu cuenta de Twitter ahora con python y con la gran librería de Tweepy.
Tweepy es una grandiosa librería. La más popular de Internet, para programar bots con python para Twitter.
Previo a la configuración es necesario instalar Python y Tweepy. En el vídeo a continuación explico el proceso a cabalidad.
Entrando en materia para poner a punto la suite de bots de Twitter en Python con Tweepy que planteo en el vídeo.
Primero es necesario instalar Python y Tweepy para luego gestionar la conexión con Twitter desde tu Bot. En adición te recomiendo la instalación de Visual Studio Code, que es el editor de código que uso en todos mis post de Social Media, Growth Hacking y Desarrollo.
Proceso de conexión con la API de Twitter
Una API se puede resumir como los términos en los que te vas a comunicar con Twitter.
Básicamente lo que se va a hacer es crear una aplicación en Twitter.
Esto no es más que crear cuatro llaves de acceso para autenticarte satisfactoriamente desde tu bot de python en tu ordenador hasta la aplicación de Twitter que te da el acceso a la API.
Creación de la Aplicación de Twitter
Lo primero es acceder a la página de desarrolladores de twitter en la siguiente URL
https://developer.twitter.com/en/apps
Debes obtener la consumer_key, la consumer_secret, el access_token y el access_token_secret esa información la diligencias en el documento a continuación.
Creación de script de credenciales sacadas de tu aplicación de Twitter
Este documento créalo con el nombre credenciales.py y rellena con tu información el script a continuación.
credenciales = dict(
screen_name = 'tu usuario sin arroba',
consumer_key = '',
consumer_secret = '',
access_token = '',
access_token_secret = '',
)
Previamente hice una publicación en la que mostraba como dar like automático y retweet desde python con tweepy. En el vídeo relacionado, por ser más específico en su enfoque, que en este blog post, me dediqué a mostrar comando por comando como hacer el script y de hecho construí el script en el vídeo.
Este documento, credenciales.py lo vamos a estar llamando desde los diferentes script de python para autenticarnos con Twitter en cada bot.
Suite de bots python para Twitter
A continuación les muestro los bots diseñados para la suite de este blog post:
Dejar de seguir a quien no te sigue con pregunta de sí o no en consola
import tweepy
from credenciales import credenciales
import time
SCREEN_NAME = credenciales['screen_name']
CONSUMER_KEY = credenciales['consumer_key']
CONSUMER_SECRET = credenciales['consumer_secret']
ACCESS_TOKEN = credenciales['access_token']
ACCESS_TOKEN_SECRET = credenciales['access_token_secret']
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)
followers = api.followers_ids(SCREEN_NAME)
friends = api.friends_ids(SCREEN_NAME)
for f in friends:
if f not in followers:
api.destroy_friendship(f)
print ("He dejado de seguir a {0}".format(api.get_user(f).screen_name))
time.sleep(50)
Dejar de seguir a quien no te sigue sin pregunta
import tweepy
from credenciales import credenciales
import time
SCREEN_NAME = credenciales['screen_name']
CONSUMER_KEY = credenciales['consumer_key']
CONSUMER_SECRET = credenciales['consumer_secret']
ACCESS_TOKEN = credenciales['access_token']
ACCESS_TOKEN_SECRET = credenciales['access_token_secret']
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)
followers = api.followers_ids(SCREEN_NAME)
friends = api.friends_ids(SCREEN_NAME)
for f in friends:
if f not in followers:
api.destroy_friendship(f)
print ("He dejado de seguir a {0}".format(api.get_user(f).screen_name))
time.sleep(50)
Seguir a quien te sigue
import tweepy
from credenciales import credenciales
import time
CONSUMER_KEY = credenciales['consumer_key']
CONSUMER_SECRET = credenciales['consumer_secret']
ACCESS_TOKEN = credenciales['access_token']
ACCESS_TOKEN_SECRET = credenciales['access_token_secret']
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)
for follower in tweepy.Cursor(api.followers).items():
follower.follow()
print ("acabo de seguir a ")
print (follower.screen_name)
time.sleep(50)
Enviar tweet grupal a varias cuentas
import tweepy, sys, time
from random import randint
from credenciales import credenciales
CONSUMER_KEY = credenciales['consumer_key']
CONSUMER_SECRET = credenciales['consumer_secret']
ACCESS_TOKEN = credenciales['access_token']
ACCESS_TOKEN_SECRET = credenciales['access_token_secret']
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)
usuarios = sys.argv[1]
f = open(usuarios, "r")
h = f.readlines()
f.close()
for i in h:
i = i.rstrip()
m = i + " " + sys.argv[2]
s = api.update_status(m)
nap = randint(1, 60)
time.sleep(nap)
Además de este script debes crear una archivo con extensión txt de nombre usuarios.txt en el que pondrás las cuentas, una debajo de la otra con el arroba, como se ve a continación
@configuroweb
@w3c
@ProgrammableWeb
@3Scale
@BankInnovation
El script se debe ejecutar con la siguiente sintaxis, claro está en caso de que le hayas puesto el nombre de msjusuarios.py al script de python
python msjusuarios.py usuarios.txt "tu mensaje"
Dar retweet automático por hashtag
Este script lo hice previamente en una publicación anterior y por eso no se conecta con el script de credenciales los debes poner en el mismo código.
import tweepy
import time
auth = tweepy.OAuthHandler('','')
auth.set_access_token('','')
api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)
user = api.me()
search = 'Marketing'
lang = 'es'
nrTweets = 15
for tweet in tweepy.Cursor(api.search,search).items(nrTweets):
try:
print('He dado Retweet')
tweet.retweet()
time.sleep(500)
except tweepy.TweepError as e:
print(e.reason)
except StopIteration:
break
Dar like automático por hashtag
import tweepy
import time
auth = tweepy.OAuthHandler('','')
auth.set_access_token('','')
api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)
user = api.me()
search = 'Marketing'
lang = 'es'
nrTweets = 15
for tweet in tweepy.Cursor(api.search,search).items(nrTweets):
try:
print('He dado Like')
tweet.favorite()
time.sleep(50)
except tweepy.TweepError as e:
print(e.reason)
except StopIteration:
break
Espero te sirva esta suite, cualquier duda quedo al pendiente.
Hola… ya estos codigos no funcionan por la API v2 https://developer.twitter.com/en/support/twitter-api/v2
Por favor si pueden actualizarlos… gracias!