Verifique el resultado de CBSE usando Selenium en Python

Requisito previo: Selenium Python

En este artículo, extraeremos el resultado de CBSE de su sitio web y almacenaremos el resultado en un archivo CSV. El archivo CSV contendrá la siguiente información.

  1. Nombre del candidato
  2. Estado de aprobado o reprobado
  3. Marcas obtenidas

Instalaciones requeridas 

  • Vaya al símbolo del sistema y ponga esto en:
pip install selenium

Acercarse:

  1. Primero en ir al sitio web número 12, siga este ENLACE (esto es para el resultado 12 de la junta de CBSE en 2014).
  2. Luego haga clic en investigar el elemento presionando ctrl + shift + I urgentemente o accediendo a la configuración del navegador y haciendo clic en investigar detalles manualmente.
  3. Luego navegue hasta el cuadro donde se completa el número de rollo y luego copie x_path.
  4. Luego navegue por el botón Ver enviar y luego copie el archivo x_path.
  5. Queremos almacenar el resultado en un archivo CSV, luego también navegar por el nombre del estudiante, el estado de reprobado, las calificaciones obtenidas y luego completar el número de registro automáticamente mediante el script. Vaya a la página siguiente, busque x_path del nombre del estudiante, estado de reprobado, obtenga calificaciones.

Dada una captura de pantalla para seguir esta instrucción paso a paso:

Paso 1:

Paso 2:

Paso 3:

Paso 4:

Paso 5:

Paso 6:

sigue el mismo tema a la izquierda tres

A continuación se muestra la implementación:

Python3

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import csv
import time
  
  
# creating csv file
filename = "cbse.csv"
  
# open csv file to write
f = open(filename, 'w')
  
# creat header in file
header = "NAME,STATUS,NUM\n"
f.write(header)
  
# put range of rollnumber
for i in range(9639428, 9639432):
      
    # use try and exception because if any
    # rollnumber is invalid then whole
    # program is not stop.
    try:
        driver = webdriver.Chrome()
          
        # link is given above copy and paste
        driver.get(
            "http://resultsarchives.nic.in/cbseresults/cbseresults2014/class12/cbse122014_total.htm")
  
        # put rollnumber
        driver.find_element_by_xpath(
            '/html/body/table[3]/tbody/tr/td/font/center[2]/form/div[1]/center/p/input[1]').send_keys(i)
          
        # view result xpath
        driver.find_element_by_xpath(
            '/html/body/table[3]/tbody/tr/td/font/center[2]/form/div[1]/center/p/input[2]').click()
          
        # student name
        name = driver.find_element_by_xpath(
            '/html/body/div[2]/table[2]/tbody/tr[2]/td[2]/font/b').text
          
        # status pass or fail
        status = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[12]/td[2]/b[1]/font').text
          
        # first subject find xpath then next 4 subject
        m1 = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[2]/td[5]/font').text
        m2 = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[3]/td[5]/font').text
        m3 = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[4]/td[5]/font').text
        m4 = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[5]/td[5]/font').text
        m5 = driver.find_element_by_xpath(
            '/html/body/div[2]/div/center/table/tbody/tr[6]/td[5]/font').text
          
        # sum all marks
        num = str(int(m1)+int(m2)+int(m3)+int(m4)+int(m5))
  
        # all details fill into file
        f.write(name+","+status[9:]+","+num+"\n")
        driver.close()
      
    except NoSuchElementException as exception:
        continue
  
f.close()

Producción:

Publicación traducida automáticamente

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