Python-Anfänger haben beschlossen, einen LINE-Bot mit Flask zu erstellen (Flask-Kommentar)

Warum ist das passiert?

Unmittelbar nachdem ich als Freiberufler unabhängig geworden war, beschloss ich, einen LINE-Bot bei der Arbeit zu machen. Ich habe angefangen, selbst zu lernen, weil ich es in Python implementieren wollte, das angeblich gut in künstlicher Intelligenz und natürlicher Sprachverarbeitung ist, und es erweiterbar machen soll. Ich bin neu in Python.

Über diesen Artikel

Bevor die detaillierten Bot-Spezifikationen festgelegt wurden, habe ich Folgendes für meine eigene Studie gelernt. https://www.udemy.com/course/python-flask-python-api-line-bot/

Python wurde jedoch nur durch Punktinstallation und Progate gelernt, und ich hatte keine Kenntnis des Frameworks, so dass es zu "Flask?" Wurde. In diesem Artikel dachte ich, ich würde Flask für mich selbst zusammenfassen. Ich bin wirklich ein Anfänger, also weisen Sie bitte auf Unterschiede hin. ..

Flask ist ein Python-Webframework

Der Punkt ist, dass es schwierig ist, Python manuell zu schreiben und eine Webseite zu erstellen. Daher sollten Sie die Entwicklung mit einem Framework, das gemeinsam genutzt werden kann, problemlos fortsetzen können.

Referenz: https://dividable.net/python/flask-python/

Es behauptet, ein "Microweb Application Framework" zu sein und scheint nur die minimal notwendigen Funktionen zu haben.

Grober Vergleich mit Django, dem gleichen Webframework ↓

Flask Django
Gewicht Licht Schwer
Anpassbarkeit hoch Nicht für detaillierte Anpassungen geeignet
Ersteinrichtung früh Verschiedene Vorbereitungen sind erforderlich
Lernkosten Niedrig, weil es nur wenige Funktionen gibt Ich kann verschiedene Dinge tun, aber es scheint ziemlich schwierig zu sein
Geeignetes Geschäft Einzelfunktions-Webanwendungs- / Geschäftsverwaltungsbildschirm Großer Service für Unternehmen

Weil es so aussieht, scheint es, dass Flask besser geeignet ist, um einen Bot zu machen. Ich möchte, dass Sie schnell eine Antwort erhalten!

Grobe Verwendung von Flask

Informationen zur Installation und zum Aufbau der Umgebung finden Sie unter Offiziell.

Schreiben Sie nach der Installation einfach Folgendes und es funktioniert als Webdienst. So einfach ist das! Der Autor wurde im Schreiben von Java geschult, daher war ich beeindruckt, dass es so einfach war, dass mir schwindelig wurde.

Wie man die vertraute Hallo Welt macht

python


from flask import Flask      #Flask-Klasse importieren
app = Flask(__name__)        #Deklarieren Sie den Namen der Flask-Anwendung

@app.route('/')              #Legen Sie die URL fest, um die Funktion zu starten
def hello_world():           #Funktionsdefinition
    return "Hello World!"    #Diesmal im Browser"Hello World!"Anzeigen

if __name__ == '__main__':   #Beim Start als Anwendung
    app.run()                #Führen Sie die Anwendung auf dem lokalen Server aus

Charakteristisch sind "app = Flask (__ name __)" und "name ==" __ main __ ". Ich habe lange gebraucht, um hier zu verstehen.

Was ist "name"?

Lassen Sie uns zunächst über den Modulnamen dieser Anwendung sprechen. Wenn Sie nur ein Modul verwenden, müssen Sie __name__ verwenden. Dies liegt daran, dass der Name beim Starten als Anwendung und beim Importieren als Modul unterschiedlich ist ('__ main __' beim Starten als Anwendung, der Importname beim Importieren).

if __name__ == '__ main __': garantiert, dass das Skript nur auf diesem Server ausgeführt wird, wenn es direkt vom Pyrhon-Interpreter ausgeführt wird, nicht wenn es als Modul importiert wird.

Offiziell wird es wie oben beschrieben. Hmm, ich verstehe?

__name__ ist eine automatisch definierte Variable, die den Modulnamen der aktuellen Datei enthält.

Angenommen, Sie haben drei Flask-Anwendungen erstellt (nennen wir sie Eins, Zwei, Drei). Stellen Sie sich den Fall vor, in dem Eins und Zwei von Drei importiert werden.

Angenommen, jeder der drei hat eine Beschreibung von "if name ==" __ main__ ": app.run ()".

Wenn Sie beispielsweise Three auf dem Server ausführen, indem Sie "name" durch einen geeigneten Namen ersetzen, Es scheint, dass One und Two so konzipiert sind, dass sie nicht auf dem Server ausgeführt werden. (Der Modulname zu diesem Zeitpunkt lautet, dass Drei als "main", Eins als "Eins" und Zwei als "Zwei" behandelt werden.)

RUN auf lokalem Server

Lassen Sie uns nun die erstellte hello.py ausführen.

$ python hello.py

Flask verfügt also über einen eingebauten lokalen Entwicklungsserver Wenn Sie die obigen Schritte über die Befehlszeile ausführen, können Sie über den lokalen Host-Port 5000 (http: //127.0.0.1: 5000 /) darauf zugreifen.

Öffnen wir einen Webbrowser und greifen auf die URL zu. Es ist in Ordnung, wenn "Hallo Welt" in der oberen linken Ecke angezeigt wird. Sie können jetzt Flask verwenden. Du hast es geschafft!

Wenn Sie eine virtuelle Umgebung wie Docker verwenden, greifen Sie auf die entsprechende Adresse und den entsprechenden Port zu. (Ich könnte bald einen anderen Artikel schreiben ...)

Um den Server zu stoppen, drücken Sie Strg-C.

Hallo Welt ist fertig. Nächster?

Nachdem ich dies geschafft hatte, versuchte ich, einen Papageien-Rückgabe-Bot zu erstellen, und fuhr dann mit der Entwicklung für die Arbeit fort. Verschiedene Leute haben Artikel darüber geschrieben, wie man einen Papagei dazu bringt, einen Bot zurückzugeben. Wenn Sie sich das ansehen, denke ich, dass Sie ohne Schwierigkeiten fortfahren können.

Das nächste Mal beginne ich mit einem datenbankbezogenen Artikel, der während der Arbeitsentwicklung durcheinander gebracht wurde. Bitte schauen Sie bei Interesse vorbei. ..

Referenz

https://a2c.bitbucket.io/flask/installation.html#installation (offiziell) https://www.udemy.com/course/python-flask-python-api-line-bot/ https://methane.github.io/flask-handson/start.html

Recommended Posts

Python-Anfänger haben beschlossen, einen LINE-Bot mit Flask zu erstellen (Flask-Kommentar)
[Einführung] Ich möchte mit Python einen Mastodon-Bot erstellen! 【Anfänger】
Machen Sie mit LINE + Flask einen morphologischen Analyse-Bot
[Super einfach] Machen wir einen LINE BOT mit Python.
So erstellen Sie mit Flask einen BOT für Cisco Webex-Teams
Machen wir einen Twitter-Bot mit Python!
Senden Sie eine Nachricht mit Python an LINE (LINE Notify)
Machen Sie Twitter Trend Bot mit Heroku + Python
So erstellen Sie einen LINE-Bot mit künstlicher Intelligenz mit der Flask + LINE Messaging-API
Erstellen Sie mit Minette für Python einen LINE BOT
Ich möchte ein Spiel mit Python machen
Versuchen Sie, in Python einen "Entschlüsselungs" -Code zu erstellen
Ich habe versucht, "Sakurai-san" LINE BOT mit API Gateway + Lambda zu erstellen
Schritte zum Erstellen eines Twitter-Bots mit Python
Versuchen Sie, mit Python eine Diedergruppe zu bilden
Erstellen Sie mit Amazon Lex einen LINE WORKS-Bot
Mattermost Bot mit Python gemacht (+ Flask)
Ein Anfänger des maschinellen Lernens versuchte, mit Python ein Vorhersagemodell für Pferderennen zu erstellen
Wenn Sie einen Discord-Bot mit Python erstellen möchten, verwenden wir ein Framework
[Python] Wie zeichnet man mit Matplotlib ein Liniendiagramm?
Lassen Sie uns ein Befehls-Standby-Tool mit Python erstellen
Ich habe versucht, LINE BOT mit Python und Heroku zu machen
[Zum Spielen] Versuche Yuma zu einem LINE Bot zu machen (Python)
Machen Sie einen LINE BOT (Chat)
Machen Sie eine Lotterie mit Python
So installieren Sie NPI + Senden Sie eine Nachricht an Python
Erstellen Sie mit GoogleAppEngine / py einen LINE-Bot. Einfache nackte Version
Erstellen Sie einen Mastodon-Bot mit einer Funktion, die automatisch mit Python antwortet
Experimentieren Sie mit Python, um ein PDF für Selbstversorger für Kindle zu erstellen
Ich möchte eine Nachricht von Python an LINE Bot senden
Erklären, wie LINE BOT auf einfachste Weise der Welt erstellt werden kann (2) [Vorbereiten der Bot-Anwendung in einer lokalen Umgebung mit Django of Python]
Lassen Sie uns eine GUI mit Python erstellen.
Wie man einen lockeren Bot macht
Erstellen Sie ein Empfehlungssystem mit Python
Lassen Sie uns ein Diagramm mit Python erstellen! !!
[5.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
Rubyist hat versucht, eine einfache API mit Python + Flasche + MySQL zu erstellen
[2nd] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
[3.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
So erstellen Sie eine Überwachungskamera (Überwachungskamera) mit Opencv und Python
Ich habe versucht, mit Selenium und Python einen regelmäßigen Ausführungsprozess durchzuführen
Ich habe versucht, mit Python eine 2-Kanal-Post-Benachrichtigungsanwendung zu erstellen
[LINE Messaging API] Erstellen Sie einen BOT, der eine Verbindung zu jemandem mit Python herstellt
Ich habe versucht, eine ToDo-App mit einer Flasche mit Python zu erstellen
[4.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
[1.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
Ich habe versucht, mein eigenes High-School-Mädchen BOT im Rinna-Stil mit LINE BOT (Python & Heroku) zu machen.
Lassen Sie uns mit Python ein Shiritori-Spiel machen
[Python] Wie man eine Klasse iterierbar macht
Machen Sie einen seltenen Gacha-Simulator mit Flask
Fraktal zum Erstellen und Spielen mit Python
Lassen Sie uns mit Python langsam sprechen
[Python] [LINE Bot] Erstellen Sie einen LINE Bot mit Papageienrückgabe
Erstellen Sie ein Webframework mit Python! (1)
Erstellen Sie eine Desktop-App mit Python mit Electron
Erstellen Sie ein Webframework mit Python! (2)
Die Geschichte, wie man mit Python einen 100-Yen-Frühstücks-Bot für die Universität macht
Wie man einen Janken-Bot macht, der leicht bewegt werden kann (Kommentar)
Versuchen Sie, mit Python (2) eine Erfassungssoftware zu erstellen, die so genau wie möglich ist.
Ich habe versucht, mit Raspeye 4 (Python Edition) ein signalähnliches Signal zu erzeugen.
Wie zeichnet man eine vertikale Linie auf einer Heatmap, die mit Python Seaborn gezeichnet wurde?