Lea las últimas noticias usando newsapi | Python

En este artículo, aprenderemos a crear un script de Python para leer las últimas noticias. Obtendremos noticias de la API de noticias y luego leeremos noticias usando pyttsx3.

Módulos requeridos:

pyttsx3 - pip install pyttsx3
requests - pip install requests

Obtener API de noticias:
Para obtener una API para noticias usaremos
noticiasapi.org
. crearemos una cuenta y tomaremos la clave API haciendo clic en el botón obtener API.

Paso #1: Se necesitan módulos de importación

import pyttsx3
import requests
import json
import time

Paso #2: Configuración de URL con clave API, coloque su clave API aquí.

url = ('https://newsapi.org/v2/top-headlines?'
       'country = in&'
       'apiKey =')
  
url += 'your_api_key_here'

Paso #3: Configurar un motor para pyttsx3 para leer noticias.

engine = pyttsx3.init()

Paso #4: Configurar las propiedades de nuestro motor, significa velocidad de lectura, volumen y sonido de una voz.

rate = engine.getProperty('rate')
engine.setProperty('rate', rate + 10)
   
volume = engine.getProperty('volume')
engine.setProperty('volume', volume-0.60)
   
sound = engine.getProperty ('voices');
engine.setProperty('voice', 'sound[1].id')

Paso #5: Tratando de enviar una solicitud para recibir noticias. Aquí, la función engine.say() se usa para leer noticias.

try:
    response = requests.get(url)
except:
    engine.say("can, t access link, plz check you internet ")
   
news = json.loads(response.text)
for new in news['articles']:
    print("##############################################################\n")
    print(str(new['title']), "\n\n")
    engine.say(str(new['title']))
    print('______________________________________________________\n')
  
    engine.runAndWait()
  
    print(str(new['description']), "\n\n")
    engine.say(str(new['description']))
    engine.runAndWait()
    print("..............................................................")
    time.sleep(2)

Ahora, todo está listo para crear un bucle para leer nuevos artículos.

 
A continuación se muestra la implementación completa de Python:

import pyttsx3
import requests
import json
import time
  
url = ('https://newsapi.org/v2/top-headlines?'
       'country = in&'
       'apiKey =')
  
url +='your_api_key_here'
  
   
engine = pyttsx3.init()
rate = engine.getProperty('rate')
engine.setProperty('rate', rate + 10)
  
volume = engine.getProperty('volume')
engine.setProperty('volume', volume-0.60)
  
sound = engine.getProperty ('voices');
engine.setProperty('voice', 'sound[1].id')
  
  
try:
    response = requests.get(url)
except:
    engine.say("can, t access link, plz check you internet ")
  
news = json.loads(response.text)
  
  
for new in news['articles']:
    print("##############################################################\n")
    print(str(new['title']), "\n\n")
    engine.say(str(new['title']))
    print('______________________________________________________\n')
  
    engine.runAndWait()
  
    print(str(new['description']), "\n\n")
    engine.say(str(new['description']))
    engine.runAndWait()
    print("..............................................................")
    time.sleep(2)

Producción:

Publicación traducida automáticamente

Artículo escrito por Somil_singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *