Imaginez un matin où vous sirotez une tasse de café bien chaud et où votre ordinateur vous lit les derniers titres, tout seul. Cela ne semble-t-il pas incroyable?

Eh bien, avec Python, vous pouvez créer votre propre lecteur de nouvelles personnalisé, qui lira tous les titres les plus importants pour vous, ainsi que les extraits de chaque titre. Oui c'est vrai. En utilisant les bonnes bibliothèques, vous pouvez faire en sorte que Python fasse toutes vos routines matinales, sans avoir à lire chaque mot par vous-même.

Voici comment vous pouvez écrire ce code et le modifier sur votre site Web d'actualités préféré.

Conditions préalables à l'exécution du code

Avant de vous lancer et de commencer à écrire le code, vous devez remplir quelques conditions préalables. Ce sont des exigences très basiques, qui peuvent rendre l'utilisation de Python plus facile et plus efficace.

  1. Python: Avoir la dernière version de Python installée serait une bonne décision. Vous pouvez installer n'importe quel IDE Python pour de meilleurs résultats.
  2. Site d'actualités/accès internet : Étant donné que le code Python lit les principaux titres de votre site Web préféré, vous devez vous assurer que vous pouvez accéder au site Web lors de l'exécution de ce code.

Le code entier est écrit dans Jupyter Notebook, un populaire EDI Python pour ce guide. De plus, le site Web d'actualités d'India Today est codé dans l'exemple de code.

Pour télécharger Jupyter Notebook, vous pouvez soit l'utiliser dans le cadre du package anaconda, soit télécharger une version autonome sur votre système.

Télécharger:Anaconda | Cahier Jupyter

Sans plus tarder, approfondissons le code.

Ecrire le code en Python

Pour commencer, vous devez importer quelques bibliothèques Python, chacune ayant des objectifs différents.

importer win32com.client en tant que wincl
depuis urllib.request importer urlopen comme ureq
de bs4 importer BeautifulSoup comme soupe
sp = wincl. Dispatch("SAPI.spVoice")

Où:

  • win32com.client: Cette bibliothèque interagit avec les appareils Windows et exécute les programmes Python de manière transparente.
  • urllib.request: Cette bibliothèque gère les valeurs d'URL du module de requête.
  • bs4: La bibliothèque BS4 contient la fonction Beautiful Soup, qui récupère les données des sites Web à l'aide de Python.
  • sp = wincl. Dispatch("SAPI.spVoice") : Activez les commandes vocales dans Windows.

Ce code ne fonctionnera que sur Windows, car vous appellerez la bibliothèque win32.com.client.

Ensuite, vous devez définir l'URL (lien) du site Web dans le URL variable, qui est stockée dans la mémoire de Python.

URL = https://www.indiatoday.in/top-stories

Créez une nouvelle variable client pour stocker la commande d'ouverture d'URL.

client = ureq (url)
impression (client)

où:

  • client: Nouvelle variable.
  • ureq : Fonction Python importée de urllib.request, qui ouvre l'url stockée.

Puisque vous avez ouvert l'URL dans la mémoire, il est temps de vérifier si le site Web en question autorise les connexions non sécurisées via Python. Vous pouvez imprimer la variable client et vérifier la sortie.

Il y a deux possibilités avec la commande print :

  • Erreur HTTP: Lorsqu'un site Web est sécurisé, vous ne pouvez pas récupérer le contenu à l'aide de Python.
  • Extrait de code: Si un extrait de code est renvoyé après l'exécution du site Web, supposez que vous pouvez facilement extraire les titres.

Une fois que vous avez défini l'URL du site Web d'actualités dans la commande URL, il est temps d'importer le code HTML dans une variable.

page_html = client.read()
imprimer (page_html)

Vous devez imprimer le code HTML du site Web importé dans Python par mesure de précaution. Vous pouvez même faire correspondre ce code avec le code du site Web disponible sous le Inspecter option.

Avant de convertir le code, vous devez fermer le site Web de la mémoire de Python en utilisant la commande close.

client.close()

Puisque vous avez le code HTML importé dans une variable Python, vous devez le convertir dans un format lisible par Python pour appliquer le trouver et Trouver tout commandes pour rechercher des mots-clés.

Vous pouvez passer la commande suivante pour convertir le code HTML :

page_soup = soupe (page_html, "html.parser")

Où:

  • page_soupe : Nouvelle variable.
  • soupe: Alias ​​pour le Beau module Soupe.
  • page_html : Variable qui contient le code HTML du site Web.
  • analyseur_html : Syntaxe par défaut pour convertir le code HTML.

Une fois que le code est prêt à l'emploi, il est temps d'examiner le code HTML du site Web pour commencer à rechercher les mots-clés principaux.

Pour ce faire, faites un clic droit n'importe où sur le site Web et cliquez sur Inspecter. Cela ouvrira le code HTML du site Web en question.

Dans la fenêtre de code du site Web, faites défiler jusqu'à ce que vous trouviez les balises de conteneur qui stockent les titres.

Celles-ci sont contenues dans le afficher le contenu balises sur le site Web India Today. Les conteneurs de chaque site Web d'actualités varient, mais vous devriez pouvoir naviguer dans le code avec une relative facilité.

articles = page_soup.find("div", { "class": "view-content" })

Enfin, vous devez capturer les sous-balises, qui contiennent les principaux titres que Python vous lira.

articles = articles.findAll("div", {"class": "listing-catégorie"})

Le conteneur de contenu d'affichage contiendra plusieurs titres, l'enveloppe extérieure de vos titres.

Pour capturer les balises H2 et les extraits répertoriés avec chaque titre, vous devez exécuter une boucle.

je = 1
pour x dans les articles :
titre = x.trouver("h2").texte
para = x.trouver("p").texte
print (i, titre, "
", "
", par, "
", "
")
sp. Parle (titre)
sp. Parlez (para)
je=je+1

Où:

  • je: Nouvelle variable de compteur, qui sera auto-incrémentée.
  • Titre: Nouvelle variable pour enregistrer le titre (h2).
  • para: Nouvelle variable pour contenir les paragraphes associés à chaque H2.
  • impression: Le titre du titre et le para seront imprimés sur l'interface Python.
  • sp. Parlez (Titre): Python lira chaque titre stocké.
  • sp. Parlez (para): Python lira chaque extrait de paragraphe stocké.
  • je = je+1 : Cette commande incrémente automatiquement le numéro de série associé à chaque titre affiché sur l'interface de Python.

Utilisation du module Beautiful Soup de Python pour lire vos nouvelles quotidiennes

Chaque fois que vous exécutez le code, de nouveaux titres du site Web d'actualités seront téléchargés avant d'être lus à haute voix. Python exécute le code chaque fois que vous exécutez l'ensemble de codes, vous tenant ainsi au courant des modifications apportées au site Web.

Les anciens titres continueront d'être affichés et lus par Python jusqu'à ce que vous actualisiez et réexécutiez le code.

Utiliser Python pour lire vos titres quotidiens est facile

Python, en tant que langage open source, propose une série d'outils tels que Beautiful Soup, Selenium et d'autres frameworks, aux débutants comme aux utilisateurs avancés.

Si vous souhaitez que vos nouvelles quotidiennes soient transmises vocalement, Python vous facilite la tâche. Apprendre ce langage particulier peut également vous aider à devenir un meilleur programmeur dans tous les domaines.

10 outils utiles pour les développeurs Python

Que vous ayez besoin d'outils Python pour la science des données, l'apprentissage automatique, le développement Web ou quoi que ce soit entre les deux, cette liste vous couvre.

Lire la suite

PartagerTweeterE-mail
Rubriques connexes
  • Programmation
  • Python
  • Nouvelles
  • Conseils informatiques
  • Programmation
A propos de l'auteur
Gaurav Sial (56 articles publiés)

Gaurav Siyal a deux ans d'expérience en rédaction, écrivant pour une série d'entreprises de marketing numérique et de documents sur le cycle de vie des logiciels.

Plus de Gaurav Siyal

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner