Skip to content

Commit 48f0a3c

Browse files
RomaCZdatakurre
authored andcommitted
Update selectors.py
Make compatible with Selenium 4.3.0 where deprecated find_element_by_* and find_elements_by_* are now removed
1 parent 9f298b1 commit 48f0a3c

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

src/robotkernel/selectors.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ def get_element_highlight_script(results, old_elements):
154154
def clear_selector_highlights(driver):
155155
try:
156156
script, arguments = get_element_highlight_script(
157-
[], driver.find_elements_by_css_selector("[data-robotkernel]")
157+
[], driver.find_elements("css selector", "[data-robotkernel]")
158158
)
159159
except InvalidSessionIdException as e:
160160
raise BrokenOpenConnection(driver) from e
@@ -175,7 +175,7 @@ def get_selenium_selector_completions(needle, driver):
175175
try:
176176
# Inject supporting JS and CSS
177177
styles = 'style[data-name="robotkernel"]'
178-
if not driver.find_elements_by_css_selector(styles):
178+
if not driver.find_elements("css selector", styles):
179179
with pkg_resources.resource_stream(
180180
"robotkernel", "resources/simmerjs/simmer.js"
181181
) as fp:
@@ -195,7 +195,7 @@ def get_selenium_selector_completions(needle, driver):
195195
# Highlight
196196
if can_highlight:
197197
script, arguments = get_element_highlight_script(
198-
results, driver.find_elements_by_css_selector("[data-robotkernel]")
198+
results, driver.find_elements("css selector", "[data-robotkernel]")
199199
)
200200
driver.execute_script(script, *arguments)
201201

@@ -320,11 +320,11 @@ def get_selenium_id_selector_completions(needle, driver):
320320
needle = needle[3:]
321321
matches = []
322322
if needle:
323-
results = driver.find_elements_by_css_selector(
323+
results = driver.find_elements("css selector",
324324
f'[id="{needle}"]'
325-
) or driver.find_elements_by_css_selector(f'[id*="{needle}"]')
325+
) or driver.find_elements("css selector", f'[id*="{needle}"]')
326326
else:
327-
results = driver.find_elements_by_xpath("//*[@id]")
327+
results = driver.find_elements("xpath", "//*[@id]")
328328
for result in visible_or_all(results):
329329
id_ = result.get_attribute("id")
330330
matches.append((f"id:{id_}", result))
@@ -335,11 +335,11 @@ def get_appium_id_selector_completions(needle, driver):
335335
needle = needle[3:]
336336
matches = []
337337
if needle:
338-
results = driver.find_elements_by_xpath(
338+
results = driver.find_elements("xpath",
339339
f"//*[" f'contains(@resource-id, "{needle}")' f"]"
340340
)
341341
else:
342-
results = driver.find_elements_by_xpath("//*[@resource-id]")
342+
results = driver.find_elements("xpath", "//*[@resource-id]")
343343
for result in visible_or_all(results):
344344
id_ = result.get_attribute("resource-id")
345345
matches.append((f'xpath=//*[@resource-id="{id_}"]', result))
@@ -350,11 +350,11 @@ def get_selenium_name_selector_completions(needle, driver):
350350
needle = needle[5:]
351351
matches = []
352352
if needle:
353-
results = driver.find_elements_by_css_selector(
353+
results = driver.find_elements("css selector",
354354
f'[name="{needle}"]'
355-
) or driver.find_elements_by_css_selector(f'[name*="{needle}"]')
355+
) or driver.find_elements("css selector", f'[name*="{needle}"]')
356356
else:
357-
results = driver.find_elements_by_xpath("//*[@name]")
357+
results = driver.find_elements("xpath", "//*[@name]")
358358
for result in visible_or_all(results):
359359
name = result.get_attribute("name")
360360
matches.append((f"name:{name}", result))
@@ -401,7 +401,7 @@ def get_selenium_css_selector_completions(needle, driver):
401401
if not needle:
402402
needle = get_selenium_needle_from_user(driver)
403403
if needle:
404-
results = driver.find_elements_by_css_selector(needle)
404+
results = driver.find_elements("css selector", needle)
405405
for result in visible_or_all(results):
406406
id_ = result.get_attribute("id")
407407
if " " in needle: # always include simmer result for complex needles
@@ -428,7 +428,7 @@ def get_selenium_tag_selector_completions(needle, driver):
428428
results = []
429429
matches = []
430430
if needle:
431-
results = driver.find_elements_by_css_selector(needle)
431+
results = driver.find_elements("css selector", needle)
432432
for result in visible_or_all(results):
433433
id_ = result.get_attribute("id")
434434
if id_:
@@ -448,9 +448,9 @@ def get_selenium_link_selector_completions(needle, driver):
448448
needle = needle[5:]
449449
matches = []
450450
if needle:
451-
results = driver.find_elements_by_partial_link_text(needle)
451+
results = driver.find_elements("partial link text", needle)
452452
else:
453-
results = driver.find_elements_by_xpath("//a")
453+
results = driver.find_elements("xpath", "//a")
454454
for result in visible_or_all(results):
455455
if result.text:
456456
matches.append((f"link:{result.text}", result))
@@ -463,7 +463,7 @@ def get_selenium_xpath_selector_completions(needle, driver):
463463
matches = []
464464
unresolved = []
465465
if needle:
466-
results = driver.find_elements_by_xpath(needle)
466+
results = driver.find_elements("xpath", needle)
467467
for result in visible_or_all(results):
468468
id_ = result.get_attribute("id")
469469
if id_:
@@ -483,13 +483,13 @@ def get_appium_xpath_selector_completions(needle, driver):
483483
needle = needle[6:]
484484
matches = []
485485
if IS_TEXT.match(needle):
486-
results = driver.find_elements_by_xpath(
486+
results = driver.find_elements("xpath",
487487
f"//*[" f'contains(@text, "{needle}")' f"]"
488488
)
489489
elif needle:
490-
results = driver.find_elements_by_xpath(needle)
490+
results = driver.find_elements("xpath", needle)
491491
else:
492-
results = driver.find_elements_by_xpath("//*[@resource-id]")
492+
results = driver.find_elements("xpath", "//*[@resource-id]")
493493
for result in visible_or_all(results):
494494
id_ = result.get_attribute("resource-id")
495495
if id_:

0 commit comments

Comments
 (0)