[PYTHON] Je veux écrire un blog avec Jupyter Notebook

Je pense que beaucoup de gens écrivent des blogs avec Markdown, mais je pense qu'il y a des moments où vous voulez publier un cahier créé avec Jupyter Notebook sur le blog tel quel.

Faisons cela avec le générateur de site statique Pelican et son plugin pelican-ipynb.

Installation

Je pense qu'il vaut mieux créer un environnement sur virtualenv.

$ pip install jupyter
$ pip install pytz
$ pip install Markdown pelican

Créer un projet

Cette fois, créez un répertoire appelé mon_projet pour le test.

$ mkdir my_project
$ cd my_project/
$ pelican-quickstart

Pour un démarrage rapide, je me suis référé à ici. Veuillez remplacer le titre, l'auteur et les autres paramètres par les vôtres.

> Where do you want to create your new web site? [.] 
> What will be the title of this web site? my project
> Who will be the author of this web site? patraqushe
> What will be the default language of this web site? [en] ja
> Do you want to specify a URL prefix? e.g., http://example.com   (Y/n) n
> Do you want to enable article pagination? (Y/n) n
> What is your time zone? [Europe/Paris] Asia/Tokyo
> Do you want to generate a Fabfile/Makefile to automate generation and publishing? (Y/n) y
> Do you want an auto-reload & simpleHTTP script to assist with theme and site development? (Y/n) y
> Do you want to upload your website using FTP? (y/N) n
> Do you want to upload your website using SSH? (y/N) n
> Do you want to upload your website using Dropbox? (y/N) n
> Do you want to upload your website using S3? (y/N) n
> Do you want to upload your website using Rackspace Cloud Files? (y/N) n
> Do you want to upload your website using GitHub Pages? (y/N) n
Done. Your new project is available at /home/driller/pelican/my_project

Installez pelican-ipynb

Dans le répertoire mon_projet

$ mkdir plugins
$ git clone https://github.com/danielfrg/pelican-ipynb.git plugins/ipynb
$ vi pelicanconf.py

Ajoutez ce qui suit à pelicanconf.py

MARKUP = ('md', 'ipynb')

PLUGIN_PATH = './plugins'
PLUGINS = ['ipynb']

Placez le cahier créé

Cette fois, préparez un répertoire pour les fichiers .ipynb dans le répertoire de contenu. Il peut être directement sous le répertoire de contenu.

Dans le répertoire mon_projet

$ cd content/
$ mkdir notebook

Placez le fichier .ipynb créé par jupyter notebook dans le répertoire my_project / content / notebook. Créez ensuite un fichier appelé <nom de fichier avec le même nom> -meta. Cette fois, je l'ai préparé avec le nom de fichier test01.ipynb.

$ cd notebook/
$ ls
test01.ipynb
$ vi test01.ipynb-meta

Contenu de test01.ipynb-meta

Title: notebook test
Slug: test01
Date: 2015-12-18 0:00
Category: Pelican
Tags: Python, Pelican, Jupyter
Author: patraqushe
Summary: jupyter notebook article

Construction / confirmation du site

Revenez dans le répertoire my_project, créez le site avec make html et démarrez le serveur avec make serve.

$ ls
test01.ipynb  test01.ipynb-meta
$ cd ../..
$ make html
$ make serve

Si vous accédez à `` http: // localhost: 8000 '' avec un navigateur, vous verrez un écran comme celui-ci.

pelican-ipynb.PNG

Après cela, modifiez le thème et les paramètres de différentes manières et ajustez-les à votre guise.

Recommended Posts

Je veux écrire un blog avec Jupyter Notebook
Je souhaite utiliser un environnement virtuel avec jupyter notebook!
Je veux faire ○○ avec les Pandas
Je veux déboguer avec Python
Je souhaite utiliser facilement les fonctions R avec le notebook ipython
Je veux créer un éditeur de blog avec l'administrateur de django
Je veux démarrer un environnement Jupyter avec une seule commande
Je veux installer Python avec PythonAnywhere
Je veux analyser les journaux avec Python
Je veux jouer avec aws avec python
Comment utiliser le notebook Jupyter avec ABCI
Je voulais créer une présentation intelligente avec Jupyter Notebook + nb present
Comment déboguer avec Jupyter ou iPython Notebook
Je veux utiliser MATLAB feval avec python
Je veux moquer datetime.datetime.now () même avec pytest!
Je souhaite afficher plusieurs images avec matplotlib.
Je veux frapper 100 sciences des données avec Colaboratory
Je veux faire un jeu avec Python
Je veux être OREMO avec setParam!
Je souhaite utiliser le répertoire temporaire avec Python2
Je ne veux pas utiliser -inf avec np.log
#Unresolved Je veux compiler gobject-introspection avec Python3
Je souhaite utiliser ip vrf avec SONiC
Je veux résoudre APG4b avec Python (chapitre 2)
Je veux recommencer avec Migrate de Django
J'ai essayé de démarrer Jupyter avec toutes les lumières d'Amazon
Je veux écrire dans un fichier avec Python
Je voulais utiliser le notebook jupyter avec docker dans l'environnement pip (opticspy)
Je souhaite afficher une image sur Jupyter Notebook à l'aide d'OpenCV (mac)
Je veux convertir une image en WebP avec sucette
Je souhaite détecter une connexion non autorisée à Facebook avec Jubatus (1)
Utilisation de Graphviz avec Jupyter Notebook
Je veux faire la transition avec un bouton sur le ballon
Je veux gérer l'optimisation avec python et cplex
Utiliser pip avec Jupyter Notebook
Je veux escalader une montagne avec l'apprentissage par renforcement
Je veux résoudre SUDOKU
Utiliser Cython avec Jupyter Notebook
Je veux hériter de l'arrière avec la classe de données python
Jouer avec Jupyter Notebook (IPython Notebook)
Je veux travailler avec un robot en python.
Je veux diviser une chaîne de caractères avec hiragana
Je veux AWS Lambda avec Python sur Mac!
Je souhaite créer manuellement une légende avec matplotlib
[TensorFlow] Je souhaite traiter des fenêtres avec Ragged Tensor
jupyter je l'ai touché
Comment utiliser Jupyter Notebook
Je veux faire fonctionner un ordinateur quantique avec Python
Une bibliothèque pour la science des données "Je veux faire ça" sur le bloc-notes Jupyter
Je veux lier une variable locale avec lambda
Je veux tracer les informations de localisation de GTFS Realtime sur Jupyter! (Avec ballon)
Je souhaite supprimer l'avertissement d'importation non résolue de Python avec vsCode
Je souhaite spécifier une autre version de Python avec pyvenv
Je veux pouvoir analyser des données avec Python (partie 1)
[NetworkX] Je souhaite rechercher des nœuds avec des attributs spécifiques
Je veux faire une macro de clic avec pyautogui (désir)
Je veux changer le drapeau japonais en drapeau des Palaos avec Numpy
Je veux pouvoir analyser des données avec Python (partie 4)