[PYTHON] Envoie le résultat de l'analyse morphologique avec Mecab vers un navigateur WEB compatible avec le serveur Sakura / UTF-8

Aperçu

Pour le serveur Sakura, navigateur WEB compatible avec UTF-8 Sortie du résultat de l'analyse morphologique avec Mecab.

Le langage de programmation est expliqué en utilisant python2.7. J'espère que cela vous sera utile lorsque vous afficherez le résultat de sortie de Mecab sur le WEB.

Installer Mecab lui-même et appeler Mecab depuis Python Voir l'article précédent.

Installez mecab sur le serveur partagé Sakura et appelez-le depuis python http://qiita.com/Jshirius/items/3a067486e2a693544c32

Le code de caractère utilise UTF-8. Le code de caractère de Mecab est "euc-jp" par défaut, et j'étais accro à la sortie du résultat avec UTF-8. Par conséquent, laissez une note.

Conditions préalables

Conditions préalables Dans cet article, les répertoires suivants seront les racines du Web. /home/orehome/www/test

Où mettre le programme /home/orehome/www/test/cgi-bin

Nom du fichier source mecab_sample.py

Contenu

(1) Ecrivez le code source Écrivez le code source suivant.

mecab_sample.py



#!/usr/bin/env python
# coding: UTF-8

import MeCab

#Spécifiez l'emplacement du fichier de dictionnaire avec le chemin complet (la lecture a échoué pour une raison quelconque s'il s'agit d'un chemin relatif)
userdic_path="-d /home/orehome/local/lib/mecab/dic/ipadic"
t = MeCab.Tagger("-Ochasen " + userdic_path)

text = u'Des cuisses et des cuisses'
#Convertir en utf8
encoded_text = text.encode('utf-8')
meData = t.parse(encoded_text )

#Code de saut de ligne<br>Conversion en
meData = meData.replace("\n","<br>")


html_body="""
<html><body>
Exemple de caractère d'entrée:<br>%s
<br><br>
Résultats de l'analyse morphologique<br>
%s
</body></html>"""



print "Content-type: text/html\n"
#Caractères déformés dans Chrome sans les balises Meta suivantes
print "<meta charset=utf-8 />"
print html_body % (encoded_text,meData)

Placez le code source créé n'importe où sur le serveur. Cependant, comme le code source fonctionne sur cgi, veuillez le conserver dans le répertoire cgi-bin.

Dans cet exemple, placez le fichier à l'emplacement suivant: /home/orehome/www/test/cgi-bin/mecab_sample.py

(2) Modifiez l'autorisation d'accès pour activer Rendre les autorisations d'accès exécutables. Si vous oubliez cela et accédez à la page WEB, le navigateur Il est devenu blanc et a mis une heure à se résoudre ... chmod 755 mecab_sample.py

(3) Démarrez le serveur WEB python Passez au niveau supérieur suivant de "cgi-bin" et entrez la commande suivante pour exécuter le serveur. Pour cet article, accédez à / home / orehome / www / test et entrez la commande suivante:

python -m CGIHTTPServer

Voici comment maintenir le serveur en marche même après la déconnexion nohup python -m CGIHTTPServer &

~~ * Je ne sais pas si la méthode d'utilisation de nohup est correcte lors d'un fonctionnement dans un environnement de production. Si quelqu'un sait, faites-le moi savoir! ~~

Ajouté le 18 avril 2017 Lorsque vous travaillez dans un environnement de production, les matériaux suivants seront utiles! Essayez de déplacer le simple PYTHON CGI avec Sakura (Préférences) http://www.mwsoft.jp/programming/python/sakura/010_010.html

(4) Vérification du fonctionnement du navigateur WEB Mon environnement utilise python2.7. Cliquez sur l'URL appropriée de votre navigateur.

http://domain_name:8000/cgi-bin/mecab_sample.py

S'il fonctionne correctement, il s'affichera comme suit.

スクリーンショット 2017-04-16 14.10.48.png

Recommended Posts

Envoie le résultat de l'analyse morphologique avec Mecab vers un navigateur WEB compatible avec le serveur Sakura / UTF-8
Créez un bot qui ne renvoie que le résultat de l'analyse morphologique avec MeCab avec Discord
J'ai créé une classe pour obtenir le résultat de l'analyse par MeCab dans ndarray avec python
Comment afficher le résultat de sortie de la commande man Linux dans un fichier
De l'introduction de JUMAN ++ à l'analyse morphologique du japonais avec Python
Pour générer une valeur au milieu d'une cellule avec Jupyter Notebook
Connexion SSH au serveur cible à partir de Windows en un clic sur un raccourci
Un mémorandum sur les avertissements dans les résultats de sortie de pylint
[Analyse morphologique] Comment ajouter un nouveau dictionnaire à Mecab
Afficher le résultat de sortie de sklearn.metrics.classification_report sous forme de fichier CSV
J'ai essayé de réécrire le serveur WEB de la 1ère édition de programmation Linux normale avec C ++ 14
Comment afficher le maillage régional du Government Statistics Office (eStat) dans un navigateur Web
Script Python qui peut vérifier l'état du serveur à partir du navigateur
Créez un serveur API Web ultra-rapide avec Falcon
[Introduction à AWS] Mémorandum de création d'un serveur Web sur AWS
[Python] Analyse morphologique avec MeCab
Observation en virgule fixe de données spécifiques sur le Web en exécutant automatiquement un navigateur Web sur le serveur (Ubuntu16.04) (2) -Web scraping-
[python, ruby] sélénium-Obtenez le contenu d'une page Web avec le pilote Web
J'ai créé un serveur Web avec Razpai pour regarder des anime
[Introduction à StyleGAN] J'ai joué avec "The Life of a Man" ♬
Je veux sortir le début du mois prochain avec Python
Exportez le contenu de ~ .xlsx dans le dossier en HTML avec Python
J'ai joué avec Mecab (analyse morphologique)!
Introduction et utilisation de la bouteille Python ・ Essayez de configurer un serveur Web simple avec une fonction de connexion
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
[Reconnaissance d'image] Comment lire le résultat de l'annotation automatique avec VoTT
J'ai écrit un lecteur de corpus qui lit les résultats de l'analyse MeCab
L'histoire du développement d'une application WEB qui génère automatiquement des copies de capture [MeCab]
Hit une méthode d'une instance de classe avec l'API Web Python Bottle
L Chika (compatible HTTPS) avec Arduino lors de l'accès au serveur Web
J'ai essayé de vérifier le résultat du test A / B avec le test du chi carré
Résumé de la création d'un environnement LAMP + Wordpress avec Sakura VPS
Observation en virgule fixe de données spécifiques sur le Web en exécutant automatiquement le navigateur Web sur le serveur (Ubuntu16.04) (3) ~ Exécution automatique Cron ~
L'histoire de la mise en place de MeCab dans Ubuntu 16.04
Serveur Web pour tester le navigateur avec Mocha
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python
[Python] De l'analyse morphologique des données CSV à la sortie CSV et à l'affichage graphique [GiNZA]
N'hésitez pas à rédiger un test avec nez (dans le cas de + gevent)
Essayez de résoudre le problème du voyageur de commerce avec un algorithme génétique (résultat de l'exécution)
[NNabla] Comment obtenir la sortie (variable) de la couche intermédiaire du réseau construit
Notez la solution car django n'a pas pu s'installer avec pip
L'histoire de la création d'une application Web qui enregistre des lectures approfondies avec Django
Comment obtenir une liste de fichiers dans le même répertoire avec python
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
J'ai essayé de créer un modèle avec l'exemple d'Amazon SageMaker Autopilot
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
La première intelligence artificielle. Je voulais essayer le traitement du langage naturel, donc je vais essayer l'analyse morphologique en utilisant MeCab avec python3.