10000 🐛 (Selenium deprecation) Use `By.` instead of `find_element_by_*` · ccaj007/complete-python-course@f2d3029 · GitHub
[go: up one dir, main page]

Skip to content

Commit f2d3029

Browse files
committed
🐛 (Selenium deprecation) Use By. instead of find_element_by_*
A short while ago, the Selenium library finally deprecated all the `find_element_by_*` methods, so now the recommended approach is to use `find_element(By.*, "term")`, where `By.*` can be something like `By.ID` or `By.CSS_SELECTOR` (that's the most used in this repo).
1 parent 0c2e27a commit f2d3029

File tree

15 files changed

+66
-52
lines changed

15 files changed

+66
-52
lines changed

course_contents/12_browser_automation_selenium/code/pages/quotes_page.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from typing import List
2+
from selenium.webdriver.common.by import By
23
from selenium.webdriver.support.ui import Select
34
from selenium.common.exceptions import NoSuchElementException
45

@@ -21,22 +22,22 @@ def quotes(self) -> List[QuoteParser]:
2122

2223
@property
2324
def author_dropdown(self) -> Select:
24-
element = self.browser.find_element_by_css_selector(
25-
QuotesPageLocators.AUTHOR_DROPDOWN
25+
element = self.browser.find_element(
26+
By.CSS_SELECTOR, QuotesPageLocators.AUTHOR_DROPDOWN
2627
)
2728
return Select(element)
2829

2930
@property
3031
def tags_dropdown(self):
31-
element = self.browser.find_element_by_css_selector(
32-
QuotesPageLocators.TAG_DROPDOWN
32+
element = self.browser.find_element(
33+
By.CSS_SELECTOR, QuotesPageLocators.TAG_DROPDOWN
3334
)
3435
return Select(element)
3536

3637
@property
3738
def search_button(self):
38-
return self.browser.find_element_by_css_selector(
39-
QuotesPageLocators.SEARCH_BUTTON
39+
return self.browser.find_element(
40+
By.CSS_SELECTOR, QuotesPageLocators.SEARCH_BUTTON
4041
)
4142

4243
def select_author(self, author_name: str):

course_contents/12_browser_automation_selenium/lectures/11_adding_waits_to_our_code/pages/quotes_page.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,22 @@ def quotes(self) -> List[QuoteParser]:
2424

2525
@property
2626
def author_dropdown(self) -> Select:
27-
element = self.browser.find_element_by_css_selector(
28-
QuotesPageLocators.AUTHOR_DROPDOWN
27+
element = self.browser.find_element(
28+
By.CSS_SELECTOR, QuotesPageLocators.AUTHOR_DROPDOWN
2929
)
3030
return Select(element)
3131

3232
@property
3333
def tags_dropdown(self):
34-
element = self.browser.find_element_by_css_selector(
35-
QuotesPageLocators.TAG_DROPDOWN
34+
element = self.browser.find_element(
35+
By.CSS_SELECTOR, QuotesPageLocators.TAG_DROPDOWN
3636
)
3737
return Select(element)
3838

3939
@property
4040
def search_button(self):
41-
return self.browser.find_element_by_css_selector(
42-
QuotesPageLocators.SEARCH_BUTTON
41+
return self.browser.find_element(
42+
By.CSS_SELECTOR, QuotesPageLocators.SEARCH_BUTTON
4343
)
4444

4545
def select_author(self, author_name: str):

course_contents/12_browser_automation_selenium/lectures/11_adding_waits_to_our_code/parsers/quote.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from selenium.webdriver.common.by import By
12
from locators.quote_locators import QuoteLocators
23

34

@@ -11,12 +12,12 @@ def __repr__(self):
1112
@property
1213
def content(self):
1314
locator = QuoteLocators.CONTENT_LOCATOR
14-
return self.parent.find_element_by_css_selector(locator).text
15+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
1516

1617
@property
1718
def author(self):
1819
locator = QuoteLocators.AUTHOR_LOCATOR
19-
return self.parent.find_element_by_css_selector(locator).text
20+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
2021

2122
@property
2223
def tags(self):

course_contents/12_browser_automation_selenium/lectures/3_using_chrome_in_scraping_code/parsers/quote.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from selenium.webdriver.common.by import By
12
from locators.quote_locators import QuoteLocators
23

34

@@ -11,12 +12,12 @@ def __repr__(self):
1112
@property
1213
def content(self):
1314
locator = QuoteLocators.CONTENT_LOCATOR
14-
return self.parent.find_element_by_css_selector(locator).text
15+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
1516

1617
@property
1718
def author(self):
1819
locator = QuoteLocators.AUTHOR_LOCATOR
19-
return self.parent.find_element_by_css_selector(locator).text
20+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
2021

2122
@property
2223
def tags(self):

course_contents/12_browser_automation_selenium/lectures/4_our_new_page_locators/parsers/quote.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from selenium.webdriver.common.by import By
12
from locators.quote_locators import QuoteLocators
23

34

@@ -11,12 +12,12 @@ def __repr__(self):
1112
@property
1213
def content(self):
1314
locator = QuoteLocators.CONTENT_LOCATOR
14-
return self.parent.find_element_by_css_selector(locator).text
15+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
1516

1617
@property
1718
def author(self):
1819
locator = QuoteLocators.AUTHOR_LOCATOR
19-
return self.parent.find_element_by_css_selector(locator).text
20+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
2021

2122
@property
2223
def tags(self):

course_contents/12_browser_automation_selenium/lectures/5_interacting_with_dropdowns/pages/quotes_page.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from typing import List
2+
from selenium.webdriver.common.by import By
23
from selenium.webdriver.support.ui import Select
34

45
from locators.quotes_page_locators import QuotesPageLocators
@@ -20,8 +21,8 @@ def quotes(self) -> List[QuoteParser]:
2021

2122
@property
2223
def author_dropdown(self) -> Select:
23-
element = self.browser.find_element_by_css_selector(
24-
QuotesPageLocators.AUTHOR_DROPDOWN
24+
element = self.browser.find_element(
25+
By.CSS_SELECTOR, QuotesPageLocators.AUTHOR_DROPDOWN
< 10000 code>2526
)
2627
return Select(element)
2728

course_contents/12_browser_automation_selenium/lectures/5_interacting_with_dropdowns/parsers/quote.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from selenium.webdriver.common.by import By
12
from locators.quote_locators import QuoteLocators
23

34

@@ -11,12 +12,12 @@ def __repr__(self):
1112
@property
1213
def content(self):
1314
locator = QuoteLocators.CONTENT_LOCATOR
14-
return self.parent.find_element_by_css_selector(locator).text
15+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
1516

1617
@property
1718
def author(self):
1819
locator = QuoteLocators.AUTHOR_LOCATOR
19-
return self.parent.find_element_by_css_selector(locator).text
20+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
2021

2122
@property
2223
def tags(self):

course_contents/12_browser_automation_selenium/lectures/6_selecting_tags/pages/quotes_page.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from typing import List
2+
from selenium.webdriver.common.by import By
23
from selenium.webdriver.support.ui import Select
34

45
from locators.quotes_page_locators import QuotesPageLocators
@@ -20,15 +21,15 @@ def quotes(self) -> List[QuoteParser]:
2021

2122
@property
2223
def author_dropdown(self) -> Select:
23-
element = self.browser.find_element_by_css_selector(
24-
QuotesPageLocators.AUTHOR_DROPDOWN
24+
element = self.browser.find_element(
25+
By.CSS_SELECTOR, QuotesPageLocators.AUTHOR_DROPDOWN
2526
)
2627
return Select(element)
2728

2829
@property
2930
def tags_dropdown(self):
30-
element = self.browser.find_element_by_css_selector(
31-
QuotesPageLocators.TAG_DROPDOWN
31+
element = self.browser.find_element(
32+
By.CSS_SELECTOR, QuotesPageLocators.TAG_DROPDOWN
3233
)
3334
return Select(element)
3435

course_contents/12_browser_automation_selenium/lectures/6_selecting_tags/parsers/quote.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from selenium.webdriver.common.by import By
12
from locators.quote_locators import QuoteLocators
23

34

@@ -11,12 +12,12 @@ def __repr__(self):
1112
@property
1213
def content(self):
1314
locator = QuoteLocators.CONTENT_LOCATOR
14-
return self.parent.find_element_by_css_selector(locator).text
15+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
1516

1617
@property
1718
def author(self):
1819
locator = QuoteLocators.AUTHOR_LOCATOR
19-
return self.parent.find_element_by_css_selector(locator).text
20+
return self.parent.find_element(By.CSS_SELECTOR, locator).text
2021

2122
@property
2223
def tags(self):

course_contents/12_browser_automation_selenium/lectures/7_searching_for_quotes/pages/quotes_page.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from typing import List
2+
from selenium.webdriver.common.by import By
23
from selenium.webdriver.support.ui import Select
34

45
from locators.quotes_page_locators import QuotesPageLocators
@@ -20,22 +21,22 @@ def quotes(self) -> List[QuoteParser]:
2021

2122
@property
2223
def author_dropdown(self) -> Select:
23-
element = self.browser.find_element_by_css_selector(
24-
QuotesPageLocators.AUTHOR_DROPDOWN
24+
element = self.browser.find_element(
25+
By.CSS_SELECTOR, QuotesPageLocators.AUTHOR_DROPDOWN
2526
)
2627
return Select(element)
2728

2829
@property
2930
def tags_dropdown(self):
30-
element = self.browser.find_element_by_css_selector(
31-
QuotesPageLocators.TAG_DROPDOWN
31+
element = self.browser.find_element(
32+
By.CSS_SELECTOR, QuotesPageLocators.TAG_DROPDOWN
3233
)
3334
return Select(element)
3435

3536
@property
3637
def search_button(self):
37-
return self.browser.find_element_by_css_selector(
38-
QuotesPageLocators.SEARCH_BUTTON
38+
return self.browser.find_element(
39+
By.CSS_SELECTOR, QuotesPageLocators.SEARCH_BUTTON
3940
)
4041

4142
def select_author(self, author_name: str):

0 commit comments

Comments
 (0)
0