Code Python3. Dans le cas du système 2, je pense que cela fonctionnera si vous changez un peu la zone autour de super ()
.
import tweepy
consumer_key = "CONSUMER_KEY"
consumer_secret = "CONSUMER_SECRET"
access_token = "ACCESS_TOKEN"
access_secret = "ACCESS_TOKEN_SECRET"
class StreamListener(tweepy.StreamListener):
def __init__(self, api):
super().__init__(api)
self.me = self.api.me()
def on_event(self, event):
if event.event == 'follow':
if self.me.id != source_user["id"]:
source_user = event.source
event._api.create_friendship(source_user["id"])
print("followed by {} {}".format(source_user["name"], source_user["screen_name"]))
if __name__ == "__main__":
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)
stream = tweepy.Stream(auth=api.auth, listener=StreamListener(api))
stream.userstream(_with="user")
En plus des tweets, le flux d'utilisateurs a également des événements qui lui sont liés.
La méthode ʻon_event de Tweepy semble se déclencher quand ʻevent
arrive.
__init__À l'intérieur
self.me = self.api.me()
on_En cas
if self.me.id != source_user["id"]:
En tant que spécification, «l'utilisateur suit quelqu'un» et «l'utilisateur est suivi» flux comme le même «suivre», et
La description | Source | Target |
---|---|---|
J'ai été suivi par quelqu'un | Following user | Current user |
J'ai suivi quelqu'un | Current user | Followed user |
Comme indiqué dans ce tableau, la position à laquelle vous et l'autre partie entrez peut changer en fonction de la situation.
Par conséquent, lorsque vous retournez un suivi, vous essayez de vous suivre.
Dans ce cas, une erreur se produira, donc afin de l'éviter, obtenez vos propres informations lors de la création de l'instance, et changez l'ID de source_user
en votre propre ʻid chaque fois que l'événement
follow` se déroule. Je compare.
De plus, il y a un ʻunfollow dans ʻevent
, mais c'est ce qui se passe lorsque vous ne suivez plus un autre utilisateur, et vous ne pouvez pas recevoir le fait que vous n'avez pas été suivi par un autre utilisateur.
Ainsi, pour le désabonnement automatique, vous devez accéder à l'API REST en temps opportun.
Streaming message types | Twitter Developers
tweepy/streaming.py at master · tweepy/tweepy
Recommended Posts