[PYTHON] Wenn Sie von Mia Nanasawas Bild geheilt werden möchten, klicken Sie auf die Twitter-API ♪

Einführung

Dieses Mal werden wir uns mit der ** Twiiter-API ** in der Web-API befassen. Wenn Sie die Twiiter-API verwenden, können Sie die folgenden zwei Punkte automatisch ausführen.

① Holen Sie sich Beiträge, die bestimmte Bedingungen erfüllen ② Posten Sie automatisch mit Ihrem eigenen Konto

Dieses Mal werde ich ① ausführen.

Wir werden die geposteten Bilder automatisch aus dem Tweet von ** Mia Nanasawa ** erhalten, die als AV-Schauspielerin aktiv ist und mir am meisten zu Dank verpflichtet ist.

Holen Sie sich Twitter Keys & Tokens

consumer_key = "???"
consumer_secret = "???"
access_token = "???"
access_token_secret = "???"
#Holen Sie sich jeden???Ersatz in.

Holen Sie sich Mia Nanasawas Twitter-Account und die Anzahl der Follower

Einzelheiten zum Code unten https://kurozumi.github.io/tweepy/getting_started.html#hello-tweepy Es ist geschrieben in.

def show_user_profile():
  user = api.get_user('mia_nanasawa')
  print(user.screen_name) #Kontonamen abrufen
  print(user.followers_count) #Holen Sie sich Follower
データ

Auf dem Twitter-Bild unten können Sie sehen, dass Sie den ** Kontonamen ** und die ** Anzahl der Follower ** korrekt erhalten haben.

データ

Erhalten Sie Tweet-Informationen von Mia Nanasawa (mehrere Bilder)

Verwendung von user_timeline https://kurozumi.github.io/tweepy/api.html Es ist geschrieben in.

def show_media_url():
  user_id = "mia_nanasawa"
  statuses = api.user_timeline(id=user_id, count=4)

  count = 1
  for status in statuses:
    for entity in status.extended_entities["media"]:
      img_url = entity["media_url"]
      print(img_url)
    break

Bild herunterladen

def download_image(url, file_path):
  r = requests.get(url, stream=True)

  if r.status_code == 200:
    with open(file_path, "wb") as f:
      f.write(r.content)

Lauf

Verwendung des Cursors https://kurozumi.github.io/tweepy/cursor_tutorial.html Es ist geschrieben in.

def main():
  user_id = "mia_nanasawa"
  for page in tweepy.Cursor(api.user_timeline, id=user_id).pages(20):
    for status in page:
      try:
        for media in status.extended_entities["media"]:
          media_id = media["id"]
          img_url = media["media_url"]
          print(media_id)
          print(img_url)

          #Im aktuellen Verzeichnis"Erstellen Sie einen "Bilderordner".
          download_image(url=img_url, file_path="./images/{}.jpg ".format(media_id))

      #Wenn während eines Versuchs ein Fehler auftritt, wird eine Ausnahme ausgegeben und eine Schleife ausgeführt
      except Exception as e:
        print(e)
        #Beim Twittern mit einem Video kann ein Fehler auftreten.

if __name__ == "__main__":
    main()
データ

An der obigen Ausgabe können Sie erkennen, dass eine ** Fehlerbehandlung ** aufgetreten ist. Es ist wahrscheinlich, dass der Tweet ** Videos ** anstelle von Bilddateien enthält. (Das getwitterte Bild wurde übrigens korrekt aufgenommen.)

Ergebnis

データ

Ich konnte bestätigen, dass es korrekt in der Bilddatei gespeichert wurde.

Jetzt hast du eine gute Augenweide.

Recommended Posts

Wenn Sie von Mia Nanasawas Bild geheilt werden möchten, klicken Sie auf die Twitter-API ♪
Python-Programm ist langsam! Ich möchte beschleunigen! In einem solchen Fall ...
Ich möchte die Grafik in 3D sehen! Ich kann einen solchen Traum wahr werden lassen.
Ich möchte in der Einschlussnotation drucken
Ich möchte die Farbe ändern, indem ich auf den Streupunkt in matplotlib klicke
Ich möchte jedes Mal, wenn ich sudo bin, von einem hübschen Mädchen verflucht werden! !!
Ich möchte eine Liste in der Reihenfolge anderer Listen sortieren
[LINE Messaging API] Ich möchte eine Nachricht vom Programm an alle LINE senden
Ich möchte eine API erstellen, die ein Modell mit einer rekursiven Beziehung im Django REST Framework zurückgibt
Ich möchte mit Python ein Fenster erstellen
Ich möchte eine Prioritätswarteschlange erstellen, die mit Python (2.7) aktualisiert werden kann.
Ich möchte einen Lebenszyklus in der Aufgabendefinition von ECS festlegen
Ich möchte eine Liste der WebDAV-Dateien im Modul Anfragen anzeigen
Ich dachte, es wäre langsam, die for-Anweisung in NumPy zu verwenden, aber das war nicht der Fall.
Ich möchte den Fortschritt in Python anzeigen!
Verwenden Sie die Twitter-API, um die von Twitter benötigte Zeit zu verkürzen (erstellen Sie eine Hervorhebungszeitleiste).
Ich möchte Timeout einfach in Python implementieren
Ich möchte, dass DQN Puniki einen Homerun macht
100 Klopfen bei der Bildverarbeitung !! (021-030) Ich möchte eine Pause machen ...
Ich möchte mit einem Knopf am Kolben übergehen
Ich möchte in Python schreiben! (2) Schreiben wir einen Test
Ich möchte eine Datei mit Python zufällig testen
Ich möchte mit einem Roboter in Python arbeiten.
Ich möchte in Python schreiben! (3) Verwenden Sie Mock
Ich möchte R-Datensatz mit Python verwenden
Ich habe versucht, eine RESTful-API zu erstellen, indem ich die explosive Fast-API des Python-Frameworks mit MySQL verbunden habe.
Ich habe eine Klasse erstellt, um das Analyseergebnis von MeCab in ndarray mit Python zu erhalten
Ich möchte die von LINE an S3 gesendeten Fotos speichern
Ich möchte den Wörterbuchtyp in der Liste eindeutig machen
Ich möchte die gültigen Zahlen im Numpy-Array ausrichten
Ich möchte, dass Sphinx bequem ist und von allen benutzt wird
Ich möchte Python mit VS-Code ausführen können
Ich möchte eine schöne Ergänzung zu input () in Python hinzufügen
Ich möchte vorerst eine Docker-Datei erstellen.
Ich habe ein Skript geschrieben, das das Bild in zwei Teile teilt
Ich wollte den AWS-Schlüssel nicht in das Programm schreiben
Ich möchte die Effizienz mit Python auch im experimentellen System verbessern. (5) Ich möchte am Ende des Experiments eine Benachrichtigung mit der Slack-API senden
Ich möchte mit matplotlib ein Diagramm mit Wellenlinien in der Mitte erstellen (ich möchte den Eindruck manipulieren).
[Twitter] Ich möchte die heruntergeladenen vergangenen Tweets (meines Kontos) in eine schöne CSV verwandeln
Ich möchte die Mühe der Eingabe beim Debuggen von Paizas Skill-Check-Beispiel in einer lokalen Umgebung wie Jupyter [Python] sparen.
Eine einfache Möglichkeit, die Amazon-Produkt-API in Python aufzurufen
Ich möchte die Ausführungszeit aufzeichnen und ein Protokoll führen.
Exportieren Sie die von der Twitter Streaming API erfassten Inhalte im JSON-Format
[Linux] Ich möchte das Datum wissen, an dem sich der Benutzer angemeldet hat
Ich habe eine Python-Bibliothek erstellt, um die API von LINE WORKS aufzurufen
Ich habe versucht, das Bild mit OpenCV im "Skizzenstil" zu verarbeiten
Klicken Sie in Python auf die New Relic-API, um den Status des Servers abzurufen
LINEbot-Entwicklung möchte ich den Betrieb in der lokalen Umgebung überprüfen
Ich möchte ein System erstellen, um zu verhindern, dass vergessen wird, den Schlüssel 1 festzuziehen
Ich möchte eine Pipfile erstellen und im Docker wiedergeben
Ich habe versucht, das Bild mit OpenCV im "Bleistift-Zeichenstil" zu verarbeiten
Ich möchte die zweite Zeile zum Spaltennamen in Pandas machen
Ich habe versucht, ein Standbild aus dem Video auszuschneiden
Ich möchte den G-Test in einem Monat Tag 1 bestehen
Ich möchte die Bevölkerung jedes Landes der Welt kennenlernen.
Ich habe den Befehl gegeben, einen farbenfrohen Kalender im Terminal anzuzeigen
Beachten Sie, dass Sie die im Django-Vorlagenformular übergebenen Parameter Element für Element manuell dekorieren möchten
Ich möchte die Einstellungsdatei erhalten und prüfen, ob die von jinja2 generierte JSON-Datei eine gültige JSON ist
Ich möchte das Pytest-Gerät als Bibliothek an einer anderen Stelle laden (Pytest ist möglicherweise nicht in der Umgebung vorhanden).
Ich möchte komplizierte vier Regeln in der IF-Anweisung der Django-Vorlage verwenden! → Verwenden Sie eine benutzerdefinierte Vorlage