Maison > développement back-end > Tutoriel Python > Affichage des sorties de script Python sur les panneaux Conky

Affichage des sorties de script Python sur les panneaux Conky

Linda Hamilton
Libérer: 2024-12-28 17:37:10
original
892 Les gens l'ont consulté

Dans cet article, je vais démontrer un moyen simple d'afficher les données des requêtes API directement sur les panneaux de bureau à l'aide de Python et Conky.

Objectif

L'objectif est de récupérer des informations à partir d'une API et de les afficher sur un panneau de bureau. Pour cet exemple, j'utiliserai Python pour les requêtes API et Conky pour créer les panneaux.

Nous récupérerons les taux de change Bitcoin en USD et BRL à l’aide de l’API economia.awesomeapi.com.br. Ensuite, nous configurerons Conky pour exécuter le script Python toutes les heures et afficher la sortie sur le panneau. J'ai également ajouté un style de base pour améliorer l'apparence du panneau.

Displaying Python Script Outputs on Conky Panels


Script Python : btc_data.py

Vous trouverez ci-dessous le script Python qui récupère les taux Bitcoin et formate la sortie pour le panneau Conky :

import requests

API_URL = "https://economia.awesomeapi.com.br/json/last/BTC-USD,BTC-BRL"

try:
    response = requests.get(API_URL)
    data = response.json()

    btc_usd = data.get("BTCUSD", {})
    btc_brl = data.get("BTCBRL", {})

    usd_alta = f"$${float(btc_usd.get('high', 'N/A')):,.2f}"
    usd_baixa = f"$${float(btc_usd.get('low', 'N/A')):,.2f}"

    brl_alta = f"R$${float(btc_brl.get('high', 'N/A')):,.2f}"
    brl_baixa = f"R$${float(btc_brl.get('low', 'N/A')):,.2f}"

    formatted_data = (
        "\n\n${color white}BTC - USD\n${color}${color green} High: ${color}${color white}"+usd_alta+"\n${color red} Low: ${color}${color white}"+usd_baixa+"\n\n"
        "${color white}BTC - BRL\n${color}${color green} High: ${color}${color white}"+brl_alta+"\n${color red} Low: ${color}${color white}"+brl_baixa+"\n"
    )

    print(formatted_data)

except Exception as e:
    print(e)

Copier après la connexion

Configuration Conky : btc_ck.conf

Voici le fichier de configuration de Conky. Il exécute le script Python toutes les heures (3 600 secondes) et affiche la sortie formatée :

conky.config = {
    default_color = '#afafaf',
    own_window = true,
    own_window_type = 'normal',
    own_window_transparent = true,
    own_window_colour = '#000000',
    own_window_hints = 'undecorated, skip_taskbar',
    use_spacer = 'right',
    border_inner_margin = 20,
    alignment = 'middle_right',
    use_xft = true,
    double_buffer = true,
    font = 'Monospace:size=8:style=semibold',
    gap_x = 80,
    update_interval = 1.0,
}

conky.text = [[
${image /home/.../bitcoin-btc-logo.png -n -p 50,1 -s 25x25}
${execpi 3600 python3 /home/.../btc_data.py}
]]
Copier après la connexion

Points clés :

  • Données API : récupération des prix hauts et bas du Bitcoin en USD et en BRL.
  • Fréquence de mise à jour : le panneau est mis à jour toutes les heures via la fonction execpi.
  • Style : une personnalisation de base est appliquée pour améliorer l'apparence du panneau.

Exécution du projet

  • Enregistrez le script Python (btc_data.py) et le fichier de configuration Conky (btc_ck.conf) dans le répertoire souhaité.
  • Mettez à jour les chemins de fichiers dans btc_ck.conf si nécessaire (par exemple, emplacement du script Python, image du logo Bitcoin).
  • Démarrez Conky avec la configuration :
conky -c /path/to/btc_ck.conf
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal