Python Selenium 定位元素常见问题及解决方案:find_elements 用法详解
Python Selenium 定位元素常见问题解析:
你是否在使用 find_elements 方法时遇到过问题?让我们通过一个案例分析来学习如何正确使用它。
原始代码:
page_element = s.driver.find_elements(value='.J_TSaleProp', by=By.CSS_SELECTOR)
for link_element in page_element:
link_element = page_element.find_elements(by=By.TAG_NAME, value='span')
for itme in link_element:
print(itme.text)
问题分析:
find_elements方法需要两个参数:定位方式 (by) 和定位值 (value)。- 在循环中,
link_element被错误地重新赋值为page_element的结果。
解决方案:
page_element = s.driver.find_elements(by=By.CSS_SELECTOR, value='.J_TSaleProp')
for link_element in page_element:
link_element = link_element.find_elements(by=By.TAG_NAME, value='span')
for item in link_element:
print(item.text)
代码解读:
- 我们首先使用
find_elements(by=By.CSS_SELECTOR, value='.J_TSaleProp')获取所有class 为 '.J_TSaleProp' 的元素。 - 然后,我们遍历每一个
link_element,并使用find_elements(by=By.TAG_NAME, value='span')获取其内部的所有span元素。 - 最后,我们打印每个
span元素的文本内容。
通过以上修改,代码就能按照预期工作。记住,仔细检查代码逻辑和方法参数是避免错误的关键。
原文地址: http://www.cveoy.top/t/topic/DXP 著作权归作者所有。请勿转载和采集!