Рубрики
Без рубрики

Автоматизация сайта моего колледжа.

Самое раздражающее и много времени, которую я когда-либо сталкивался, это веб-сайт нашего колледжа. Каждый… Теги с Python, Selenium, Computerscience, CodeNewie.

Самое раздражающее и много времени, которую я когда-либо сталкивался, это веб-сайт нашего колледжа. Каждый раз, когда нам нужно было войти в сайт, чтобы проверить посещаемость или просто быстро проверить расписание расписание. Поэтому я подумал, что автоматизирует эту задачу с помощью SELENIUM Framework в Python. Вот как я это реализовал:

1. Импорт библиотеки:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

ПРИМЕЧАНИЕ. Перед импортом мы должны установить Selenium, запустив PIP Установить SELENIUM в командной строке, затем загрузка WebDriver Chrome отсюда: https://chromedriver.Chromium.org/downloads

2. Тогда я инициализировал Chrome WebDriver:

PATH="C:\Program Files (x86)\chromedriver"

driver=webdriver.Chrome(PATH)
driver.get("https://vtop.vitbhopal.ac.in/vtop/")

#This is the site link

3. Нажав кнопку входа

С помощью осматривать вариант В веб-браузере Chrome я обнаружил класс кнопки, а затем указал его в коде.

Поскольку на главной странице нет других элементов с тем же классом, не будет сгенерирована ошибка. И мы используем метод Click (), чтобы нажать кнопку.

vtop=driver.find_element_by_class_name("btn-primary")
vtop.click()

4. Набрав в имени пользователя и пароль

Как мы сделали на предыдущем шаге, мы должны найти идентификатор имени пользователя и пароль на вкладке «Проверка», а затем мы должны указать его в коде.

driver.implicitly_wait(5)
user_input=driver.find_element_by_name("uname")
pass_input=driver.find_element_by_name("passwd")
user_input.send_keys("20BSE10789")#enter your username
pass_input.send_keys("Pranav@2002")#enter your password

Мы должны обеспечить, чтобы Селен Проверяет элементы после того, как страница полностью загружена. Так что для этого мы используем:

driver.implicitly_wait(5)

Это гарантирует, что Selenium ждет на 5 секунд, а не бросать любую ошибку.

5. Набрав в капчи

Нам нужно ввести в капчу вручную, так как трудно автоматизировать CAPTCHA. После того, как CAPTCHA введен, автоматизация возобновится. Это достигается следующим кодом.

bt_submit = driver.find_element_by_id("captcha")
WebDriverWait(driver, timeout=1000, poll_frequency=1) \
  .until(EC.staleness_of(bt_submit))
print("signed in")

Этот код гарантирует, что Селен ждет, чтобы пользователь нажать кнопку входа в систему (проверьте каждые 1s с тайменами 1000s).

6. Просмотр таблицы посещаемости и времени

Это последняя часть кода. Здесь вкладка «Таблица времени и посещаемость» расположена в раскрывающемся меню, Я не смог получить доступ к нему напрямую, используя класс или идентификатор. Поэтому сначала добравшись к элементу главного меню с помощью класса, упомянутой внутри элемента охвата:

driver.implicitly_wait(5)
select=driver.find_element_by_xpath('.//span[@class = "fa fa-graduation-cap"]')
select.click()

После этого я добрался до пункта подменю с помощью find_element_by_link_text () метод

select=driver.find_element_by_link_text('Time Table')#Use Attendance here instead of Time table to view attendance
select.click()

Таким образом, мы можем легко увидеть таблицу времени/посещаемость.

Оригинал: “https://dev.to/cyblogerz/automating-my-college-s-website-48ho”