selenium python for 循环只重复打印第一个元素
selenium python for loop printing only first element repeatedly
我正在尝试从此 page 获取商业信息。
在这里,我为每个项目选择主容器,然后使用 for 循环从每个容器中获取业务名称。
这是我的代码:
container = driver.find_elements_by_css_selector(".businessCapsule--mainRow")
for i in container:
business_title = driver.find_element_by_css_selector('.text-h2')
print(business_title)
结果:
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
为什么它只重复打印第一项?我在上面的代码中哪里做错了。
如果我在不选择主容器的情况下尝试,那么它就可以工作。
business_title = driver.find_elements_by_css_selector(".text-h2")
for i in business_title:
business_title = i.text
print(business_title)
结果:
Mirror & Glass Processing Ltd
J.E.D Double Glazing Repairs
B & R Glazing Co.Ltd
Durham Window & Door Centre Ltd
Ken Rose Joinery & Glazing
在 for 循环代码块下你必须使用 i
而不是 driver
business_title = i.find_element_by_css_selector('.text-h2')
我正在尝试从此 page 获取商业信息。
在这里,我为每个项目选择主容器,然后使用 for 循环从每个容器中获取业务名称。
这是我的代码:
container = driver.find_elements_by_css_selector(".businessCapsule--mainRow")
for i in container:
business_title = driver.find_element_by_css_selector('.text-h2')
print(business_title)
结果:
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
Mirror & Glass Processing Ltd
为什么它只重复打印第一项?我在上面的代码中哪里做错了。
如果我在不选择主容器的情况下尝试,那么它就可以工作。
business_title = driver.find_elements_by_css_selector(".text-h2")
for i in business_title:
business_title = i.text
print(business_title)
结果:
Mirror & Glass Processing Ltd
J.E.D Double Glazing Repairs
B & R Glazing Co.Ltd
Durham Window & Door Centre Ltd
Ken Rose Joinery & Glazing
在 for 循环代码块下你必须使用 i
而不是 driver
business_title = i.find_element_by_css_selector('.text-h2')