Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Lespsycopg2 est un adaptateur de base de données PostgreSQL populaire pour le langage de programmation Python. Il est connu pour son efficacité, sa sécurité des threads et son implémentation complète de la spécification Python DB API 2.0. Explorons ses fonctionnalités et voyons quelques exemples de code. Plus loin dans cet article, nous aborderons les sujets suivantsIronPDF, une bibliothèque de génération de PDF deIron Software.
Psycopg2 est conçu pour être efficace et sûr, ce qui le rend adapté aux applications fortement multithreadées. Voici quelques-unes de ses principales caractéristiques :
Vous pouvez installerpsycopg2 en utilisant pip :
pip install psycopg2
Vous pouvez également utiliser localement setup.py du paquet source. Vous pouvez obtenir le paquet source à partir du dépôt de code sourceici:
python setup.py build
sudo python setup.py install
Pour un paquet autonome qui ne nécessite pas de compilateur ou de bibliothèques externes, vous pouvez utiliser le paquet psycopg2-binary :
pip install psycopg2-binary
Voici un exemple simple pour commencer à utiliser psycopg2.
Tout d'abord, vous devez vous connecter à votre base de données PostgreSQL :
import psycopg2
# Connect to your PostgreSQL database
conn = psycopg2.connect(
dbname="your_dbname",
user="your_username",
password="your_password",
host="your_host",
port="your_port"
)
# Create a cursor object
cur = conn.cursor()
Vous pouvez exécuter des requêtes SQL à l'aide de l'objet curseur :
# Execute a query
cur.execute("SELECT * FROM your_table")
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
print(row)
Voici comment insérer des données dans un tableau :
# Insert data into a table
cur.execute(
"INSERT INTO your_table (column1, column2) VALUES (%s, %s)",
("value1", "value2")
)
# Commit the transaction
conn.commit()
N'oubliez pas de fermer le curseur et la connexion lorsque vous avez terminé :
# Close the cursor and connection
cur.close()
conn.close()
La commande COPY est utile pour charger des données en masse :
# Use COPY to load data from a file
with open('data.csv', 'r') as f:
cur.copy_from(f, 'your_table', sep=',')
conn.commit()
Vous pouvez écouter les notifications asynchrones de la base de données :
# Listen for notifications
cur.execute("LISTEN your_channel")
# Wait for a notification
conn.poll()
while conn.notifies:
notify = conn.notifies.pop(0)
print("Got NOTIFY:", notify.payload)
IronPDF est une puissante bibliothèque Python conçue pour créer, modifier et signer des PDF à l'aide de HTML, CSS, images et JavaScript. Il offre des performances de niveau commercial avec une faible empreinte mémoire. Les principales caractéristiques sont les suivantes :
Conversion de HTML en PDF:
Convertissez des fichiers HTML, des chaînes HTML et des URL en PDF. Par exemple, rendre une page web sous forme de PDF à l'aide du moteur de rendu PDF de Chrome.
Cross-Platform Support:
Compatible avec diverses plateformes .NET, notamment .NET Core, .NET Standard et .NET Framework. Il est compatible avec Windows, Linux et macOS.
Édition et signature:
Définissez des propriétés, renforcez la sécurité à l'aide de mots de passe et d'autorisations, et appliquez des signatures numériques à vos PDF.
Modèles de pages et paramètres:
Personnalisez les PDF avec des en-têtes, des pieds de page, des numéros de page et des marges réglables. Prend en charge les mises en page réactives et les formats de papier personnalisés.
Conformité aux normes:
Respecter les normes PDF telles que PDF/A et PDF/UA. Il prend en charge le codage des caractères UTF-8 et gère les ressources telles que les images, les feuilles de style CSS et les polices.
import psycopg2
from ironpdf import *
# Apply your license key
License.LicenseKey = "Key"
# Connect to your local PostgreSQL database
conn = psycopg2.connect(
dbname="demo",
user="postgres",
password="postgres",
host="localhost",
port="5432"
)
# Create a cursor object
cur = conn.cursor()
cur.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
# Commit the transaction with connection object
conn.commit()
# Define the SQL statement for inserting data into the table
insert_query = '''
INSERT INTO users (id, name, age)
VALUES (%s, %s,%s)
'''
# Data to be inserted
userData1 = (1, 'John', 25)
# Execute the SQL command to insert data
cur.execute(insert_query, userData1)
# Data to be inserted
userData2 = (2, 'Smith', 35)
# Execute the SQL command to insert data
cur.execute(insert_query, userData2)
# Data to be inserted
userData3 = (3, 'Tom', 29)
# Execute the SQL command to insert data
cur.execute(insert_query, userData3)
# Commit the transaction
conn.commit()
# Execute a query
cur.execute("SELECT * FROM users")
# Fetch all results
rows = cur.fetchall()
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with psycopg2</h1>"
content += "<p>table data</p>"
for row in rows:
print(row)
content += "<p>"+str(row)+"</p>"
# Close the cursor and connection
cur.close()
conn.close()
pdf = renderer.RenderHtmlAsPdf(content)
# Export to a file or Stream
pdf.SaveAs("Demopsycopg2.pdf")
Le script démontre l'interaction avec une base de données PostgreSQL à l'aide de `psycopg2`, la manipulation de données(création, insertion, récupération)et l'intégration avec IronPDF pour la génération de documents.
Connexion à la base de données : Se connecte à une base de données PostgreSQL locale nommée "demo" en utilisant `psycopg2`, en spécifiant les informations d'identification pour l'authentification de l'utilisateur et les détails de l'hôte de la base de données.
Création de table : Définit et exécute une instruction SQL pour créer une table nommée "utilisateurs" si elle n'existe pas encore. La table a des colonnes \Nid\N(nombre entier, clé primaire), \Nname\N(texte, non nul), et `age`(entier).
Insertion de données : Insère trois lignes de données dans la table "Utilisateurs" à l'aide de requêtes paramétrées(\N-userData1\N, \N-userData2\N, \N-userData3\N). Chaque tuple contient des valeurs pour \Nid\N, \Nname\N et \Nage\N.
Gestion des transactions : La transaction est validée après la création d'une table et l'insertion de données afin de garantir que les modifications sont enregistrées dans la base de données.
Récupération de données : Exécute une requête SELECT pour récupérer toutes les lignes(``SELECT FROM users`` (sélectionner des utilisateurs)) à partir de la table "Utilisateurs" et récupère les résultats(\N-rows\N- \N- \N).
Génération de PDF : Utilise IronPDF pour générer un document PDF à partir d'un contenu HTML. Le contenu HTML comprend un titre et une représentation formatée des données extraites du tableau "Utilisateurs".
Enregistrement du fichier : Enregistre le document PDF généré sous le nom de "Demopsycopg2.pdf" dans le répertoire actuel.
Fermeture de la connexion : Cette fonction ferme le curseur de la base de données(\circuit) et la connexion à la base de données(\Nconnaissance) pour débloquer les ressources et assurer un nettoyage adéquat.
Pour la gestion des exceptions, vous pouvez entourer le script d'un bloc try-catch afin de vous assurer que toutes les opérations d'erreur sont gérées en cas d'échec de l'une des requêtes ou de l'échec de la connexion.
IronPDF fonctionne avec la clé de licence Python. IronPDF for Python offre une clé de licence d'essai gratuite pour permettre aux utilisateurs de tester ses nombreuses fonctionnalités avant de l'acheter.
Placez la clé de licence au début du script avant d'utiliser le progiciel IronPDF :
from ironpdf import *
# Apply your license key
License.LicenseKey = "key"
Psycopg2 est une bibliothèque puissante et flexible pour interagir avec les bases de données PostgreSQL en Python. Ses fonctionnalités complètes et sa conception efficace en font un excellent choix pour les opérations de base de données simples et complexes. IronPDF est un package et une bibliothèque Python robuste qui facilite la création, la manipulation et le rendu de documents PDF directement à partir d'applications Python. Il offre des fonctionnalités complètes pour générer des PDF à partir de contenu HTML, en s'intégrant de manière transparente aux technologies web existantes. Avec IronPDF, les développeurs peuvent automatiser efficacement la génération de rapports, de factures et d'autres documents, améliorant ainsi la productivité et l'expérience des utilisateurs. Ses capacités comprennent des formulaires PDF interactifs, l'extraction de texte, la fusion et la division de PDF, et l'ajout de fonctions de sécurité telles que la protection par mot de passe. La polyvalence et la facilité d'utilisation d'IronPDF en font un outil précieux pour les développeurs qui cherchent à mettre en œuvre des fonctionnalités de génération et de manipulation de PDF dans leurs projets Python.
9 produits de l'API .NET pour vos documents de bureau