Extraiga la información del autor del artículo de Geeksforgeeks usando Python

En este artículo, vamos a escribir un script de Python para extraer la información del autor del artículo de GeeksforGeeks.

Módulo necesario

  • bs4: Beautiful Soup (bs4) es una biblioteca de Python para extraer datos de archivos HTML y XML. Este módulo no viene integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install bs4
  • requests : Requests le permite enviar requests HTTP/1.1 muy fácilmente. Este módulo tampoco viene integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install requests

Acercarse:

  • Módulo de importación
  • Hacer una instancia de requests y pasar a la URL
  • Inicializar el título del artículo
  • Pasar URL a un getdata()
  • Raspe los datos con la ayuda de requests y Beautiful Soup
  • Encuentre los detalles requeridos y fíltrelos.

Ejecución paso a paso de scripts:

Paso 1: importar todas las dependencias

Python

# import module
import requests
from bs4 import BeautifulSoup

 
Paso 2: Cree una función de obtención de URL 

Python3

# link for extract html data
# Making a GET request
     
def getdata(url):
    r=requests.get(url)
    return r.text

Paso 3: ahora combine el nombre del artículo en la URL y pase la URL a la función getdata() y convierta esos datos en código HTML 

Python3

# input article by geek
article = "optparse-module-in-python"
 
# url
url = "https://www.geeksforgeeks.org/"+article
 
# pass the url
# into getdata function
htmldata=getdata(url)
soup = BeautifulSoup(htmldata, 'html.parser')
 
# display html code
print(soup)

Producción: 

Paso 4: recorrer el nombre del autor del documento HTML. 

Python

# traverse author name
for i in soup.find('div', class_="author_handle"):
    Author = i.get_text()
print(Author)

Producción: 

kumar_satyam

Paso 5: Ahora cree una URL con el nombre del autor y obtenga el código HTML. 

Python3

# now get author information
# with author name
profile ='https://auth.geeksforgeeks.org/user/'+Author+'/profile'
 
# pass the url
# into getdata function
htmldata=getdata(profile)
soup = BeautifulSoup(htmldata, 'html.parser')

Paso 6: Recorrer la información del autor.

Python3

# traverse information of author
name = soup.find(
    'div', class_='mdl-cell mdl-cell--9-col mdl-cell--12-col-phone textBold medText').get_text()
 
 
author_info = []
for item in soup.find_all('div', class_='mdl-cell mdl-cell--9-col mdl-cell--12-col-phone textBold'):
    author_info.append(item.get_text())
 
print("Author name :")
print(name)
print("Author information  :")
print(author_info)

Producción:

Nombre del autor: Satyam Kumar 
Información del autor: 
[‘LNMI patna’, ‘\nhttps://www.linkedin.com/in/satyam-kumar-174273101/’] 
 

Código completo:

Python3

# import module
import requests
from bs4 import BeautifulSoup
 
# link for extract html data
# Making a GET request
 
 
def getdata(url):
    r = requests.get(url)
    return r.text
 
 
# input article by geek
article = "optparse-module-in-python"
 
# url
url = "https://www.geeksforgeeks.org/"+article
 
 
# pass the url
# into getdata function
htmldata = getdata(url)
soup = BeautifulSoup(htmldata, 'html.parser')
 
# traverse author name
for i in soup.find('div', class_="author_handle"):
    Author = i.get_text()
 
# now get author information
# with author name
profile = 'https://auth.geeksforgeeks.org/user/'+Author+'/profile'
 
# pass the url
# into getdata function
htmldata = getdata(profile)
soup = BeautifulSoup(htmldata, 'html.parser')
 
# traverse information of author
name = soup.find(
    'div', class_='mdl-cell mdl-cell--9-col mdl-cell--12-col-phone textBold medText').get_text()
 
 
author_info = []
for item in soup.find_all('div', class_='mdl-cell mdl-cell--9-col mdl-cell--12-col-phone textBold'):
    author_info.append(item.get_text())
 
print("Author name :", name)
print("Author information  :")
print(author_info)

Producción:

Nombre del autor: Satyam Kumar 
Información del autor: 
[‘LNMI patna’, ‘\nhttps://www.linkedin.com/in/satyam-kumar-174273101/’] 
 

Publicación traducida automáticamente

Artículo escrito por kumar_satyam 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 *