[PYTHON] Application Web qui analyse la morphologie et génère des phrases avec la chaîne de Markov [bouteille]

Jusqu'à présent, j'ai fait pas mal de génération de phrases par analyse morphologique et chaîne de Markov, Je l'ai fait avec une bouteille.

views.html



<form method="GET" action="/show">
<p class="in">De quoi parlez-vous aujourd'hui?</p>
<p><input type="text" name="send_word"></input></p>
<p><input type="submit" value="Envoyer"></p>
</form>

Ajoutez la soumission de formulaire au fichier HTML à appeler comme écran principal.

style.css



input[type=submit]{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   -moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
   -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   width:100%;
   height:40px;
   padding:0 3px;
   cursor:pointer;
   color:#333;
   font-weight:bold;
   background:#f5f5f5;
   text-shadow:1px 1px 0px #fff;
}

input[type=text]{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   -moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
   -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
   width:100%;
   height:30px;
   padding:0 3px;
}

input[type=text]:focus {
   border:solid 1px #20b2aa;
}

input[type=text], select { 
   outline: none;
}

Lors de la personnalisation des boutons et des formulaires de texte avec CSS.

show.html


<h4 class="center">mot-clé{{send_word}}Markov!</h4>
<p>{{twits}}</p>

Le HTML pour afficher le résultat est comme ceci, et les variables définies dans la bouteille sont insérées.

route.py


@route("/show", method="GET")
def send_word():
	send_word = request.query.send_word
	send_word.encode("utf-8")
	if send_word:
		
	
		os.remove("static/tweet.txt")

Recevez par GET du formulaire avec bouteille. Comme d'habitude, j'enregistre une fois la recherche du mot-clé dans le texte, mais je ne veux pas l'augmenter, alors supprimez-la chaque fois que je l'exécute.

@error(500)
def error500(error):
	return template("500")

Si le mot de recherche est une niche ou si la limite d'API apparaît, ce sera une erreur de 500, alors évitez le traitement avec une bouteille. J'aimerais pouvoir séparer le traitement par code d'état avec try except.

Le reste est le même que celui que j'ai écrit auparavant. Le produit fini a été lancé à Heroku par le déploiement de Dropbox sans utiliser git.

http://markov-twit.herokuapp.com/

J'ai fait quelque chose comme ça.

Recommended Posts

Application Web qui analyse la morphologie et génère des phrases avec la chaîne de Markov [bouteille]
[Python] Une application web rapide avec Bottle!
Analyser et visualiser JSON (application Web ⑤ avec Python + Flask)
Essayez l'analyse morphologique et la chaîne de Markov avec Django (Ari avec beaucoup de marge d'amélioration)
Créez une application Web qui reconnaît les nombres avec un réseau neuronal
Application Web avec Python3.3.1 + Bottle (1) - Changer le moteur de modèle en jinja2