Comment publier des pages GitHub avec Pelican, un générateur HTML statique créé par Python

Comment publier des pages GitHub avec Pelican, un générateur HTML statique créé par Python

Aperçu

Pour publier des pages GitHub, j'ai créé une page en utilisant Pelican, un générateur HTML statique réalisé par Python. J'étais accro à la libération, alors prenez note de la procédure sous forme de mémorandum. La procédure détaillée est très utile car le site de référence suivant est détaillé, il est donc bon de travailler sur cette base.

1. Environnement

2. Aperçu de la procédure

  1. Installez le pélican
  2. Installez ghp-import
  3. Créez un projet de pages GitHub
  4. Créez un référentiel local
  5. Exécutez pélican-quickestart
  6. Entrez pélican-quickestart
  7. Création d'un article
  8. Confirmation de l'article
  9. Publier sur des pages GitHub
  10. Poussez la branche maître

3. Procédure détaillée

3-1. Installation du pélican

# pip install pelican

3-2. Installation de ghp-import

# pip install ghp-import

3-3. Création d'un projet de pages GitHub

Créez un référentiel à partir de la page Pages GitHub. Il existe deux types, un pour les utilisateurs et un pour les projets, mais cette fois je l'ai créé pour les utilisateurs.

3-4. Création d'un référentiel local

Clonez le référentiel.

# git clone <URL du référentiel>

3-5. Exécutez pélican-quickestart

# pelican-quickstart

3-6. Entrée de Pelican-quickstart

> Where do you want to create your new web site? [.]
> What will be the title of this web site? yusukew62 blog
> Who will be the author of this web site? yusukew62
> 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) Y
> What is your URL prefix? (see above example; no trailing slash) http://yusukew62.github.io
> Do you want to enable article pagination? (Y/n) Y
> How many articles per page do you want? [10]
> 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) y
> Is this your personal page (username.github.io)? (y/N) y
Done. Your new project is available at /root/testpelican

3-7. Création d'un article

Une fois pelican-quickstart terminé, les fichiers suivants seront créés.

Makefile  content  develop_server.sh  fabfile.py  output  pelicanconf.py  publishconf.py

Créez un article à publier dans le répertoire de contenu. Cette fois, j'ai créé un article avec reStructuredText, qui ressemble plus à Python. Lors de la création avec Markdown, placez Markdown à partir de pip.

# vi content/20161210.rst

Exemple d'article


First Post By Pelican
#####################

:date: 2016-12-08 12:00
:modified: 2016-12-10 14:40
:tags: Python, Pelican
:category: Python
:authors: yusukew62
:summary: first post by pelican

.. code-block:: python

    print "Hello World"

3-8. Confirmation de l'article

Générez un fichier html.

# make html

Vérifiez l'affichage.

# make serve

Connectez-vous à l'adresse IP de l'hôte d'exécution ci-dessus avec un navigateur sur le port 8000.

3-9. Publié sur les pages GitHub

Exportez le fichier publié sur les pages GitHub dans la branche gh-pages.

# ghp-import output

Ajoutez le fichier html généré à votre référentiel local.

# git add output/
# git commit -m 'Added all created html files'

Publier un ensemble de fichiers de la branche gh-pages vers la branche master du référentiel distant

# git push -f origin gh-pages:master

Après un certain temps, assurez-vous que la page est actualisée.

3-10. Poussée de la branche principale

La branche gh-pages n'inclut pas le répertoire de contenu ou le fichier de paramètres pélican (* .py), donc coupez une autre branche et poussez-la. Ici, il est créé en tant que branche appelée source from master et téléchargé vers un référentiel distant.

# git branch source
# git push origin source

Accédez à partir d'un navigateur et vérifiez

http://<Nom d'utilisateur>.github.io

4. Référence

Je me suis référé au site suivant. Comment créer un blog géré par Pelican + Markdown + GitHub Pages

Recommended Posts

Comment publier des pages GitHub avec Pelican, un générateur HTML statique créé par Python
Que faire lorsque la version Python est ancienne dans Cloud 9 créée par une autre personne
Comment lire un fichier CSV avec Python 2/3
Comment publier un blog sur Amazon S3 avec le moteur de blog statique `` Pélican '' pour Pythonista
Comment convertir / restaurer une chaîne avec [] en python
Pages HTML dynamiques créées avec AWS Lambda et Python
[Python] Comment dessiner un graphique linéaire avec Matplotlib
Comment enregistrer une table récupérée par python en csv
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
Le gars qui a trébuché lorsque Pelican n'a pas pu publier son blog sur les pages Github
Comment déployer une application Web créée avec Flask sur Heroku
Comment installer NPI + envoyer un message à la ligne avec python
[Python] Comment créer une liste de chaînes de caractères caractère par caractère
Comment convertir un tableau en dictionnaire avec Python [Application]
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Comment remplacer une méthode de type défini par l'utilisateur générée par python swig
J'ai créé une classe pour obtenir le résultat de l'analyse par MeCab dans ndarray avec python
Comment démarrer par lots un programme Python créé avec le notebook Jupyter
Python: comment utiliser async avec
Une histoire sur l'ajout d'une API REST à un démon créé avec Python
[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split
Comment créer une caméra de surveillance (caméra de sécurité) avec Opencv et Python
J'ai fait une loterie avec Python.
[Python] Un mémo pour faire fonctionner une ROM créée avec GBDK avec PyBoy
Comment démarrer avec Python
[Python] Comment obtenir une valeur avec une clé autre que value avec Enum
Comment calculer la date avec python
Passer la liste de Python vers C ++ par référence dans pybind11
[ROS2] Comment lire un fichier bag avec le lancement au format python
J'ai créé un démon avec Python
Comment envoyer une requête à l'API DMM (FANZA) avec python
Procédure simple pour commencer à bloguer avec le générateur de site statique de Python "Pelican"
Comment déboguer un programme Python en se connectant à distance à un conteneur Docker dans un environnement WSL2 avec VS Code
J'ai fait un générateur de mot de passe pour enseigner Python3 aux enfants (bonus) * Complètement refait
J'ai essayé de communiquer avec un serveur distant par communication Socket avec Python.
J'ai créé un outil pour parcourir automatiquement plusieurs sites avec Selenium (Python)
J'ai créé une application Web en Python qui convertit Markdown en HTML
[Python] Explique comment utiliser la fonction range avec un exemple concret
Créez un outil qui secoue automatiquement furigana avec html en utilisant Mecab de Python3
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
Comment dessiner une ligne verticale sur une carte de chaleur dessinée avec Python Seaborn
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
Comment trier en spécifiant une colonne dans le tableau Python Numpy.
3. Traitement du langage naturel avec Python 1-2. Comment créer un corpus: Aozora Bunko
Comment créer un clone depuis Github
Comment ajouter un package avec PyCharm
[Python] Comment rendre une classe itérable
[Python] Comment convertir une liste bidimensionnelle en liste unidimensionnelle
J'ai fait un compteur de caractères avec Python
Comment utiliser BigQuery en Python
[Python] Comment inverser une chaîne de caractères
Comment obtenir stacktrace en python
Comment faire un test de sac avec python
Comment afficher le japonais python avec lolipop
Essayez le scraping HTML avec la bibliothèque Python