Obtenga el código de la estación de ferrocarriles indios usando Python

En este artículo, vamos a escribir secuencias de comandos de Python para raspar el código de la estación de ferrocarril utilizando el nombre de su ciudad.

Ejemplos:

Input: new-delhi
Output: NDLS

Input: Patna
Output: PNBE

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 : Request le permite enviar requests HTTP/1.1 de manera extremadamente fácil. Este módulo tampoco viene integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install requests

Veamos la ejecución paso a paso del script.

Paso 1: importar todas las dependencias

Python3

# import module
import requests
from bs4 import BeautifulSoup

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

Python3

# user define function 
# Scrape the data 
def getdata(url): 
    r = requests.get(url) 
    return r.text

Paso 3: ahora combine el nombre de la ciudad en la URL y pase la URL a la función getdata() y convierta esos datos en código HTML.

Python3

# input by geek
station = "new-delhi"
  
# url
url = "https://www.mapsofindia.com/railways/station-code/"+station+".html"
  
# pass the url
# into getdata function
htmldata=getdata(url)
soup = BeautifulSoup(htmldata, 'html.parser')
  
# display html code
print(soup)

Producción:

Paso 4: recorra el código de la estación desde el documento HTML.

Python3

# traverse the station code
data = []
for item in soup.find("table", class_="extrtable").find_all('b'):
    data.append(item.get_text())
print(data[-1])

Producción:

NDLS

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 *