Accueil - Python Tout afficher

Exécuter du pur SQL avec Python et SQLAlchemy

Wakonda - Python, SQLAlchemy Posté le 4 novembre 2018

Pour exécuter directement des requêtes SQL avec SQLAlchemy, il suffit d'utiliser le code suivant :

from app import db
...
result = db.engine.execute("UPDATE Article SET title = 'test' WHERE id = 5")

 

Lire ...

Python - Supprimer l'ensemble des balises HTML

Wakonda - Python Posté le 21 octobre 2018

Il existe une multitude de méthodes pour supprimer des balises HTML. La plus simple est certainement celle consistant à utiliser une expression régulière :

import re

text = "<div><p>Hello World!</p></div>"
re.sub('<[^<]+?>', '', text)

# Hello World!

 

Lire ...

Échapper des entités HTML en Python 3.4+

Wakonda - Python Posté le 21 octobre 2018

Pour échapper des caractères HTML en Python, il suffit d'utiliser le code suivant :

import html

html.unescape('Romeo &amp; Juliet')

# 'Romeo & Juliet'

 

Lire ...

Python - Générer des slugs pour vos URL

Wakonda - Python Posté le 1 juillet 2017

Pour des besoins de référencement, il devient indispensable de générer de belles URL.Voici un petit script Python (compatible avec la version 3.*) pour sluggifier vos URLs :

_punct_re = re.compile(r'[\t !’"#$%&\'()*\-/<=>?@\[\\\]^_`{|},.]+')

def slugify(text, delim=u'-'):
        """Generates an ASCII-only slug."""
        result = []
        for word in _punct_re.split(text.lower()):
                result.extend(unidecode(word).split())
        return str(delim.join(result))

On passe comme paramètre le titre d'un article (par exemple) que l'on veut voir apparaître dans l'URL. Ce script va remplacer tous les caractères spéciaux (accents, apostrophe,...) par de simples tirets et mettre la chaîne de caractères en minuscule.

Mettre la base de données à jour :

Si votre site est déjà lancé et que vous souhaitez stocker vos URLs dans votre base de données, vous pourrez utiliser le script suivant pour la mettre à jour :

from sqlalchemy import create_engine

engine = create_engine("postgresql+psycopg2://postgres:password@localhost:5432/flask")
connection = engine.connect()
result = connection.execute("SELECT * FROM article")

for row in result:
        query = "UPDATE article SET slug = '" + slugify(row['title']) + "' WHERE id = " + str(row['id'])
        connection.execute(query)
        print(query)

Post-scriptum :

Ce script s'inspire de la page "Generating slug".

Lire ...

Python - Générer le fichier requirements.txt

Wakonda - Python Posté le 14 mai 2017

Toutes applications Python nécessitent, bien souvent, plusieurs dépendances ou paquets. Ainsi, lorsque l'on souhaite installer notre application, il peut être pratique d'installer en même temps l'ensemble des dépendances très rapidement. Pour ce faire, on peut utiliser un fichier "requirements.txt". Celui-ci est placé à la racine de votre projet et répertorie la totalité des dépendances.

Pour le générer, on peut utiliser un petit outil appelé "pipreqs". Afin de l'installer, on lance la ligne de commande suivante :

pip install pipreqs

Pour générer notre fichier, on utilisera la commande qui suit :

pipreqs /chemin/vers/votre/projet

Une fois cette opération terminée, un fichier "requirements.txt" apparaîtra à la racine de votre projet. Il se présentera sous cette forme :

Flask_Mail==0.9.1
Werkzeug==0.11.11
Flask_Script==2.0.5
pyreadline==2.1
Flask_WTF==0.13.1
WTForms==2.1
SQLAlchemy==1.1.2
Flask_Babel==0.11.1
Jinja2==2.8
Flask_SQLAlchemy==2.1
Pillow==4.1.1

Pour installer l'ensemble des dépendances présentes dans ce fichier, il existe une commande :

pip install -r requirements.txt

 

Lire ...

Rechercher

Tags

Publicité

Suivez-nous

Aidez-nous !


Loading…
Loading the web debug toolbar…
Attempt #