Seite 1 von 1

Twitter

Verfasst: Freitag 20. März 2015, 13:24
von meego
Gibt es für Twitter eine einfachere/anfängerfreundlichere API als Tweepy?

Re: Twitter

Verfasst: Freitag 20. März 2015, 13:49
von Hyperion
Auf pypi habe ich die beiden folgenden ganz oben in der Liste beim Suchwort "twitter":
http://mike.verdone.ca/twitter/
https://github.com/bear/python-twitter

Ob die jetzt besser oder schlechter sind, kann ich nicht beurteilen!

Was missfällt Dir denn an Tweepy? In der Doku sehe ich sofort eine nettes Beispiel für das Laden der eigenen Timeline. Das sieht doch recht simpel aus :K

Re: Twitter

Verfasst: Freitag 20. März 2015, 14:20
von meego
Ich möchte:

Zietl wäre: In den Followern eines bestimmten Twitternutzers nach bestimmten Texten in der Timeline dieser Follower suchen und Ihnen im positiven Fall folgen.

Ich glaube auf Follower von fremden Profilne zugreifen ist schon einmal nicht so intuitiv. Ich habe folgendes Beispiel im Web gefunden. Die Funktion Paginate verstehe ich jedoch nicht und hoffe, es gibt eine einfachere Lösung. Offenbar braucht es sie wohl, weil Twitter nur eine bestimmte Anzahl Follower preis gibt, oder so ähnlich. Ich habe es geschafft das ganze auf eine Schnittmengenfunktion für Follower von zwei Twitterprofilen abzuändern.

Code: Alles auswählen

import itertools
import tweepy

def paginate(iterable, page_size):
    while True:
        i1, i2 = itertools.tee(iterable)
        iterable, page = (itertools.islice(i1, page_size, None),
                list(itertools.islice(i2, page_size)))
        if len(page) == 0:
            break
        yield page

consumer_key=""
consumer_secret=""

access_token=""
access_token_secret=""

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.secure = True
auth.set_access_token(access_token, access_token_secret)

api = tweepy.API(auth)

followers_kino1 = api.followers_ids(screen_name='Gaswerk')

followers_kino2 = api.followers_ids(screen_name='Coucou')

meine_liste = []
for element in followers_kino2:
	if element in followers_kino1:
		meine_liste.append(element)

for page in paginate(meine_liste, 100):
    results = api.lookup_users(user_ids=page)
    for result in results:
        print result.screen_name