Skip to content

Update deprecated find_element_by_* commands to find_element(By.*, ' ') #8

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion 1/main.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import os
from selenium import webdriver
from selenium.webdriver.common.by import By

os.environ['PATH'] += r"C:/SeleniumDrivers"
driver = webdriver.Chrome()
driver.get("https://www.seleniumeasy.com/test/jquery-download-progress-bar-demo.html")
driver.implicitly_wait(30)
my_element = driver.find_element_by_id('downloadButton')
my_element = driver.find_element(By.ID, 'downloadButton')
my_element.click()
2 changes: 1 addition & 1 deletion 2/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
driver = webdriver.Chrome()
driver.get("https://www.seleniumeasy.com/test/jquery-download-progress-bar-demo.html")
driver.implicitly_wait(8)
my_element = driver.find_element_by_id('downloadButton')
my_element = driver.find_element(By.ID, 'downloadButton')
my_element.click()

WebDriverWait(driver, 30).until(
Expand Down
6 changes: 3 additions & 3 deletions 3/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
except:
print('No element with this class name. Skipping ....')

sum1 = driver.find_element_by_id('sum1')
sum2 = driver.find_element_by_id('sum2')
sum1 = driver.find_element(By.ID, 'sum1')
sum2 = driver.find_element(By.ID, 'sum2')

sum1.send_keys(Keys.NUMPAD1, Keys.NUMPAD5)
sum2.send_keys(15)

btn = driver.find_element_by_css_selector('button[onclick="return total()"]')
btn = driver.find_element(By.CSS_SELECTOR, 'button[onclick="return total()"]')
btn.click()
9 changes: 5 additions & 4 deletions Bot Project/05 - Deal Searching Part 1/booking/booking.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import booking.constants as const
import os
from selenium import webdriver
from selenium.webdriver.common.by import By


class Booking(webdriver.Chrome):
Expand All @@ -21,23 +22,23 @@ def land_first_page(self):
self.get(const.BASE_URL)

def change_currency(self, currency=None):
currency_element = self.find_element_by_css_selector(
currency_element = self.find_element(By.CSS_SELECTOR,
'button[data-tooltip-text="Choose your currency"]'
)
currency_element.click()

selected_currency_element = self.find_element_by_css_selector(
selected_currency_element = self.find_element(By.CSS_SELECTOR,
f'a[data-modal-header-async-url-param*="selected_currency={currency}"]'
)
selected_currency_element.click()


def select_place_to_go(self, place_to_go):
search_field = self.find_element_by_id('ss')
search_field = self.find_element(By.ID, 'ss')
search_field.clear()
search_field.send_keys(place_to_go)

first_result = self.find_element_by_css_selector(
first_result = self.find_element(By.CSS_SELECTOR,
'li[data-i="0"]'
)
first_result.click()
24 changes: 13 additions & 11 deletions Bot Project/06 - Deal Searching Part 2/booking/booking.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import os
from selenium import webdriver
from booking.booking_filtration import BookingFiltration
from selenium.webdriver.common.by import By


class Booking(webdriver.Chrome):
Expand All @@ -22,66 +23,67 @@ def land_first_page(self):
self.get(const.BASE_URL)

def change_currency(self, currency=None):
currency_element = self.find_element_by_css_selector(
currency_element = self.find_element(By.CSS_SELECTOR,
'button[data-tooltip-text="Choose your currency"]'
)
currency_element.click()

selected_currency_element = self.find_element_by_css_selector(
selected_currency_element = self.find_element(By.CSS_SELECTOR,
f'a[data-modal-header-async-url-param*="selected_currency={currency}"]'
)
selected_currency_element.click()


def select_place_to_go(self, place_to_go):
search_field = self.find_element_by_id('ss')
search_field = self.find_element(By.ID, 'ss')
search_field.clear()
search_field.send_keys(place_to_go)

first_result = self.find_element_by_css_selector(
first_result = self.find_element(By.CSS_SELECTOR,
'li[data-i="0"]'
)
first_result.click()

def select_dates(self, check_in_date, check_out_date):
check_in_element = self.find_element_by_css_selector(
check_in_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_in_date}"]'
)
check_in_element.click()

check_out_element = self.find_element_by_css_selector(
check_out_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_out_date}"]'
)
check_out_element.click()

def select_adults(self, count=1):
selection_element = self.find_element_by_id('xp__guests__toggle')
selection_element = self.find_element(By.ID,
'xp__guests__toggle')
selection_element.click()

while True:
decrease_adults_element = self.find_element_by_css_selector(
decrease_adults_element = self.find_element(By.CSS_SELECTOR,
'button[aria-label="Decrease number of Adults"]'
)
decrease_adults_element.click()
#If the value of adults reaches 1, then we should get out
#of the while loop
adults_value_element = self.find_element_by_id('group_adults')
adults_value_element = self.find_element(By.ID, 'group_adults')
adults_value = adults_value_element.get_attribute(
'value'
) # Should give back the adults count

if int(adults_value) == 1:
break

increase_button_element = self.find_element_by_css_selector(
increase_button_element = self.find_element(By.ID,
'button[aria-label="Increase number of Adults"]'
)

for _ in range(count - 1):
increase_button_element.click()

def click_search(self):
search_button = self.find_element_by_css_selector(
search_button = self.find_element(By.CSS_SELECTOR,
'button[type="submit"]'
)
search_button.click()
Expand Down
23 changes: 12 additions & 11 deletions Bot Project/07 - Booking Filtrations/booking/booking.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import booking.constants as const
import os
from selenium import webdriver
from selenium.webdriver.common.By import By
from booking.booking_filtration import BookingFiltration


Expand All @@ -22,66 +23,66 @@ def land_first_page(self):
self.get(const.BASE_URL)

def change_currency(self, currency=None):
currency_element = self.find_element_by_css_selector(
currency_element = self.find_element(By.CSS_SELECTOR,
'button[data-tooltip-text="Choose your currency"]'
)
currency_element.click()

selected_currency_element = self.find_element_by_css_selector(
selected_currency_element = self.find_element(By.CSS_SELECTOR,
f'a[data-modal-header-async-url-param*="selected_currency={currency}"]'
)
selected_currency_element.click()


def select_place_to_go(self, place_to_go):
search_field = self.find_element_by_id('ss')
search_field = self.find_element(By.ID, 'ss')
search_field.clear()
search_field.send_keys(place_to_go)

first_result = self.find_element_by_css_selector(
first_result = self.find_element(By.CSS_SELECTOR
'li[data-i="0"]'
)
first_result.click()

def select_dates(self, check_in_date, check_out_date):
check_in_element = self.find_element_by_css_selector(
check_in_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_in_date}"]'
)
check_in_element.click()

check_out_element = self.find_element_by_css_selector(
check_out_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_out_date}"]'
)
check_out_element.click()

def select_adults(self, count=1):
selection_element = self.find_element_by_id('xp__guests__toggle')
selection_element = self.find_element(By.ID, 'xp__guests__toggle')
selection_element.click()

while True:
decrease_adults_element = self.find_element_by_css_selector(
decrease_adults_element = self.find_element(By.CSS_SELECTOR,
'button[aria-label="Decrease number of Adults"]'
)
decrease_adults_element.click()
#If the value of adults reaches 1, then we should get out
#of the while loop
adults_value_element = self.find_element_by_id('group_adults')
adults_value_element = self.find_element(By.ID, 'group_adults')
adults_value = adults_value_element.get_attribute(
'value'
) # Should give back the adults count

if int(adults_value) == 1:
break

increase_button_element = self.find_element_by_css_selector(
increase_button_element = self.find_element(By.CSS_SELECTOR,
'button[aria-label="Increase number of Adults"]'
)

for _ in range(count - 1):
increase_button_element.click()

def click_search(self):
search_button = self.find_element_by_css_selector(
search_button = self.find_element(By.CSS_SELECTOR,
'button[type="submit"]'
)
search_button.click()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ def __init__(self, driver:WebDriver):
self.driver = driver

def apply_star_rating(self, *star_values):
star_filtration_box = self.driver.find_element_by_id('filter_class')
star_filtration_box = self.driver.find_element(By.ID, 'filter_class')
star_child_elements = star_filtration_box.find_elements_by_css_selector('*')

for star_value in star_values:
Expand All @@ -18,7 +18,7 @@ def apply_star_rating(self, *star_values):


def sort_price_lowest_first(self):
element = self.driver.find_element_by_css_selector(
element = self.driver.find_element(By.CSS_SELECTOR,
'li[data-id="price"]'
)
element.click()
22 changes: 11 additions & 11 deletions Bot Project/08 - Execution from a CLI/booking/booking.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,66 +24,66 @@ def land_first_page(self):
self.get(const.BASE_URL)

def change_currency(self, currency=None):
currency_element = self.find_element_by_css_selector(
currency_element = self.find_element(By.CSS_SELECTOR,
'button[data-tooltip-text="Choose your currency"]'
)
currency_element.click()

selected_currency_element = self.find_element_by_css_selector(
selected_currency_element = self.find_element(By.CSS_SELECTOR,
f'a[data-modal-header-async-url-param*="selected_currency={currency}"]'
)
selected_currency_element.click()


def select_place_to_go(self, place_to_go):
search_field = self.find_element_by_id('ss')
search_field = self.find_element(By.ID, 'ss')
search_field.clear()
search_field.send_keys(place_to_go)

first_result = self.find_element_by_css_selector(
first_result = self.find_element(By.CSS_SELECTOR,
'li[data-i="0"]'
)
first_result.click()

def select_dates(self, check_in_date, check_out_date):
check_in_element = self.find_element_by_css_selector(
check_in_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_in_date}"]'
)
check_in_element.click()

check_out_element = self.find_element_by_css_selector(
check_out_element = self.find_element(By.CSS_SELECTOR,
f'td[data-date="{check_out_date}"]'
)
check_out_element.click()

def select_adults(self, count=1):
selection_element = self.find_element_by_id('xp__guests__toggle')
selection_element = self.find_element(By.ID, 'xp__guests__toggle')
selection_element.click()

while True:
decrease_adults_element = self.find_element_by_css_selector(
decrease_adults_element = self.find_element(By.CSS_SELECTOR,
'button[aria-label="Decrease number of Adults"]'
)
decrease_adults_element.click()
#If the value of adults reaches 1, then we should get out
#of the while loop
adults_value_element = self.find_element_by_id('group_adults')
adults_value_element = self.find_element(By.ID, 'group_adults')
adults_value = adults_value_element.get_attribute(
'value'
) # Should give back the adults count

if int(adults_value) == 1:
break

increase_button_element = self.find_element_by_css_selector(
increase_button_element = self.find_element(By.CSS_SELECTOR,
'button[aria-label="Increase number of Adults"]'
)

for _ in range(count - 1):
increase_button_element.click()

def click_search(self):
search_button = self.find_element_by_css_selector(
search_button = self.find_element(By.CSS_SELECTOR,
'button[type="submit"]'
)
search_button.click()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ def __init__(self, driver:WebDriver):
self.driver = driver

def apply_star_rating(self, *star_values):
star_filtration_box = self.driver.find_element_by_id('filter_class')
star_child_elements = star_filtration_box.find_elements_by_css_selector('*')
star_filtration_box = self.driver.find_element(By.ID, 'filter_class')
star_child_elements = star_filtration_box.find_elements(By.CSS_SELECTOR, '*')

for star_value in star_values:
for star_element in star_child_elements:
Expand All @@ -18,7 +18,7 @@ def apply_star_rating(self, *star_values):


def sort_price_lowest_first(self):
element = self.driver.find_element_by_css_selector(
element = self.driver.find_element(By.CSS_SELECTOR,
'li[data-id="price"]'
)
element.click()
Loading