Il est souvent suivi sur Twitter, mais il est gênant et gênant de vérifier l'utilisateur et de renvoyer le suivi à chaque fois. J'ai donc posté un article car ce serait pratique si je pouvais les suivre tous à la fois en précisant les conditions appropriées (probablement nième décoction).
Je vais vous présenter comment suivre (suivre) les utilisateurs qui suivent mais ne reviennent pas en utilisant tweepy, qui peut facilement gérer l'API Twitter avec le module python!
(Je pense qu'il existe divers autres critères de suivi tels que la différence entre le nombre de followers et de followers, les loisirs et les goûts ...)
OS X 10.9.4 (Marvericks) python 2.7.5 tweepy 2.3 http://www.tweepy.org/
Twitter Developers https://dev.twitter.com/
L'URL suivante est très facile à comprendre sur la façon d'obtenir un jeton d'accès. Suivez les étapes 1 et 2 pour obtenir un jeton d'accès. http://syncer.jp/twitter-api-how-to-get-access-token
Introduisez tweepy avec le système de gestion de paquets de python pip (si vous pouvez utiliser pyenv, utilisez-le également)
Fondamentalement, il est recommandé d'installer la dernière version, mais comme les spécifications de tweepy changent fréquemment, la méthode de spécification de version est décrite pour le moment.
pip install tweepy==2.3
follow_back.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import datetime
import logging
import tweepy
def get_api():
API_KEY = "api key"
API_SECRET = "api secret"
ACCESS_TOKEN = "access token"
ACCESS_TOKEN_SECRET = "access token secret"
auth = tweepy.OAuthHandler(API_KEY, API_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
return tweepy.API(auth_handler=auth, wait_on_rate_limit=True)
def get_all_my_friends(api):
all_my_friends = list()
for friend in tweepy.Cursor(api.friends).items():
logger.warning('Retrieving data from Twitter.')
all_my_friends.append(friend)
return all_my_friends
def get_all_my_followers(api):
all_my_followers = list()
for follower in tweepy.Cursor(api.followers).items():
logger.warning('Retrieving data from Twitter.')
all_my_followers.append(follower)
return all_my_followers
def follow_user_with_conditions(target_user, upper_limit_of_friends=2000, upper_limit_of_crazy=50):
twitter_experience_days = (datetime.datetime.now() - target_user.created_at).days
crazy = target_user.statuses_count * 1. / twitter_experience_days
if target_user.friends_count < upper_limit_of_friends and crazy < upper_limit_of_crazy:
target_user.follow()
print u"Nom d'utilisateur:{0:15}Nombre de tweets:{1:<9d}Degré d'abandon(tweets/a day):{2:.2f}".format(target_user.screen_name, target_user.statuses_count, crazy)
return True
return False
if __name__ == "__main__":
FORMAT = '%(asctime)s - %(name)s - %(message)s'
logging.basicConfig(format=FORMAT)
logger = logging.getLogger('twitter_api')
api = get_api()
all_my_friends = get_all_my_friends(api)
all_my_followers = get_all_my_followers(api)
#Suivez les utilisateurs qui sont des followers et qui ne se suivent pas
for unknown_follower in all_my_followers:
if unknown_follower not in all_my_friends:
follow_user_with_conditions(unknown_follower)
Dans cet article, j'ai présenté comment suivre en utilisant tweepy. Le nombre de suivis mutuels et le nombre de tweets par jour ont été fixés comme conditions de suivi.
En tant que méthode d'extension à l'avenir, il faudra du temps pour être réglementé car vous frapperez fréquemment l'API, mais vous pouvez obtenir jusqu'à 3200 commentaires des utilisateurs que vous suivez, vérifier s'il s'agit de spam ou avoir une tendance pour les passe-temps et les goûts. Je pense qu'il y a quelque chose de similaire à moi. À partir de là, des outils tels que nltk (traitement du langage naturel), scikit-learn (apprentissage automatique) et orange (Data Mining) entrent en jeu! De plus, même s'il ne devient pas si grand, il semble possible de filtrer en utilisant d'autres informations utilisateur. S'il semble y avoir une demande, je réfléchirai la prochaine fois (je ne dis pas que je le ferai