Essayez d'utiliser le framework Web Python Tornado Partie 1

introduction

J'ai joué avec Tornado récemment, donc je vais vous montrer comment l'utiliser.

Cette fois, c'est presque une refonte du Top officiel. Veuillez attendre avec impatience la prochaine fois. Si vous avez des questions ou des demandes, nous y répondrons.

Environnement d'exécution

Mon environnement d'exécution est le suivant, mais je pense qu'il n'y a pas de problème s'il s'agit d'un environnement dans lequel Python fonctionne.

Article associé

Qu'est-ce que Tornado

Tornado est un framework web / bibliothèque de communication asynchrone écrite en Python et possède les fonctionnalités suivantes.

À partir de maintenant, nous nous occuperons de tout, de l'installation à Hello et world.

Installation de Tornado

Installez Tornado avec pip.

$ pip install tornado

Si vous n'avez pas installé pip, vous devez l'installer en vous référant au site suivant.

Si vous ne souhaitez pas utiliser pip, supprimez tar.gz et utilisez setup.py comme d'habitude.

tar xvzf tornado-3.2.2.tar.gz
cd tornado-3.2.2
python setup.py build
sudo python setup.py install

Hello, world Une fois installé, tout ce que vous avez à faire est d'importer, d'écrire le code approprié et d'écouter. Ici, comme exemple le plus simple, affichons la chaîne «Hello, world» dans le navigateur. Pour afficher Hello, world, enregistrez et exécutez le code suivant dans un répertoire approprié avec un nom approprié (server.py dans ce cas).

Code source

server.py


#!/bin/env python
# -*- coding: utf-8 -*-
import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")

application = tornado.web.Application([
    (r"/", MainHandler),
])

if __name__ == "__main__":
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()

Commencez

Donnez simplement un script à python.

$ python server.py

Rien n'est affiché dans le terminal, mais si vous y accédez avec un navigateur dans cet état, "Hello, world" sera affiché.

Naviguer

helloworld.png

Jouons un peu plus

C'est ennuyeux juste d'afficher la chaîne de caractères, donc j'essaierai au moins de renvoyer le fichier html. Préparez une feuille de style et un fichier HTML, et réécrivez server.py comme suit. Avec toutes ces connaissances, vous devriez être en mesure de créer un site Web ancien qui renvoie des pages statiques correctement stylisées.

Structure du répertoire

Préparez style.css dans le répertoire static et index.html dans le répertoire templates.

$ tree --charset=x
.
|-- server.py
|-- static
|   `-- style.css
`-- templates
    `-- index.html

Code source

Les principaux changements dans server.py sont les suivants.

server.py


#!/bin/env python
# -*- coding: utf-8 -*-
from __future__ import print_function
import os
import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.render("index.html")

application = tornado.web.Application([
    (r"/", MainHandler)
    ],
    template_path=os.path.join(os.getcwd(),  "templates"),
    static_path=os.path.join(os.getcwd(),  "static"),
)

if __name__ == "__main__":
    application.listen(8888)
    print("Server is up ...")
    tornado.ioloop.IOLoop.instance().start()

style.css


body {
  font-family:'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'Hiragino Kakugo ProN W3', "MS P gothique", sans-serif;
  width: 80%;
  margin: 0 auto;
}
p {
  color:#BEAF71;
  font-size:200%;
}

index.html


<!DOCTYPE html>
<html>
  <head>
    <title>Hello, world</title>
    <link rel="stylesheet" href="{{ static_url("style.css") }}"/>
  </head>
  <body>
    <div id="container">
      <div id="main">
        <p>Hello, world</p>
      </div>
    </div>
  </body>
</html>

Commencez

$ python server.py
print("Server is up ...")

Naviguer

Vous pouvez voir que le HTML est certainement retourné.

helloworld.png helloworld.png

Recommended Posts

Essayez d'utiliser le framework Web Python Tornado Partie 1
Essayez d'utiliser le framework Web Python Tornado Partie 2
Essayez d'utiliser le framework Web Python Django (2) - Regardez setting.py
Essayez d'utiliser le framework d'application Web Flask
Essayez d'utiliser le framework web de Python Django (1) - De l'installation au démarrage du serveur
Essayez d'utiliser le module Python Cmd
Essayez d'utiliser l'API Wunderlist en Python
Essayez d'utiliser l'API Kraken avec Python
J'ai essayé le framework de test Python Tornado
Framework Web Django Python
Introduction à Tornado (1): Framework Web Python démarré avec Tornado
Essayez d'utiliser l'API BitFlyer Ligntning en Python
Python: essayez d'utiliser l'interface utilisateur sur Pythonista 3 sur iPad
Essayez d'utiliser le module de collections (ChainMap) de python3
Essayez d'utiliser Tweepy [Python2.7]
Essayez d'utiliser l'API DropBox Core avec Python
Explication du concept d'analyse de régression à l'aide de python Partie 2
Découpez une partie de la chaîne à l'aide d'une tranche Python
(Python) Essayez de développer une application Web en utilisant Django
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 1 ~
Explication du concept d'analyse de régression à l'aide de Python Partie 1
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 2 ~
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 3 ~
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 4 ~
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 5 ~
[Python] Essayez d'utiliser le canevas de Tkinter
Essayez d'utiliser Kubernetes Client -Python-
Essayez d'utiliser SQLAlchemy + MySQL (partie 1)
Essayez d'utiliser l'API Twitter
Essayez d'utiliser SQLAlchemy + MySQL (partie 2)
Web scraping avec Selenium (Python)
Essayez d'utiliser l'API PeeringDB 2.0
Les débutants en Python publient des applications Web à l'aide de l'apprentissage automatique [Partie 1] Introduction
Essayez une recherche similaire de recherche d'images à l'aide du SDK Python [Recherche]
[Part.2] Exploration avec Python! Cliquez sur la page Web pour vous déplacer!
[CleanArchitecture with Python] Partie 2: Couche Frameworks & Drivers: Présentation du Web
Utilisez le navigateur à l'aide des liaisons Python du pilote Web Selenium
Essayez d'utiliser Pillow sur iPython (partie 1)
Essayez d'utiliser l'API de Pleasant (python / FastAPI)
Accédez à l'API Web en Python
Essayez d'utiliser Pillow sur iPython (partie 3)
Extraire le fichier targz en utilisant python
Essayez d'utiliser l'API d'action de Python argparse
Installer le framework Python django à l'aide de pip
Essayez d'utiliser LeapMotion avec Python
Essayez d'utiliser Amazon DynamoDB à partir de Python
Essayez d'analyser le mahjong familial en ligne à l'aide de Python (PARTIE 1: Prendre des données)
J'ai essayé de créer un outil d'échafaudage pour le framework Web Python Bottle
Visualisez vos fichiers d'argent de poche avec Dash, le framework Web Python
Essayez d'utiliser FireBase Cloud Firestore avec Python pour le moment
Présentation du framework BOT Minette pour Python
Création d'interface graphique en python à l'aide de tkinter partie 1
Essayez une formule utilisant Σ avec python
Derrière le flyer: utiliser Docker avec Python
Essayez d'utiliser le LiDAR de 6 $ de réduction (Camsense X1)
Essayez d'utiliser la bande HL dans l'ordre
[Débutant] Scrapage Web Python facile à comprendre à l'aide de Google Colaboratory
Essayez d'utiliser l'appareil photo avec OpenCV de Python
Dialogflow (anciennement: API.AI) Essayez d'utiliser le SDK Python #dialogflow
Web-WF Python Tornado Partie 3 (Introduction à Openpyexcel)
Tweet à l'aide de l'API Twitter en Python