Python 通过从列表中获取元素来更改xpath
我在做网页抓取,并尝试使用xpath和selenium进行抓取。只需更改存储在列表中的xpath即可更改xpath。我想创建一个可以自动更改xpath并查找内容的循环。我试过了,但在某个地方出了问题Python 通过从列表中获取元素来更改xpath,python,xml,selenium,xpath,Python,Xml,Selenium,Xpath,我在做网页抓取,并尝试使用xpath和selenium进行抓取。只需更改存储在列表中的xpath即可更改xpath。我想创建一个可以自动更改xpath并查找内容的循环。我试过了,但在某个地方出了问题 packages= ["EVENINGS_AND_WEEKEND_EXTRA", "ANYTIME_EXTRA"] for i in packages: name= driver.find_element_by_xpath('//*[@id="productButtonControls_S
packages= ["EVENINGS_AND_WEEKEND_EXTRA", "ANYTIME_EXTRA"]
for i in packages:
name= driver.find_element_by_xpath('//*[@id="productButtonControls_ST_"+i]/label')
print name.text
我希望列表包中有不同的元素,而不是“晚上和周末”
#this is the required xpath which needs to be altered
//*[@id="productButtonControls_ST_EVENINGS_AND_WEEKEND_EXTRA"]/label'
尝试将这些值插入到
XPath
表达式中,如下所示:
packages= ["EVENINGS_AND_WEEKEND_EXTRA", "ANYTIME_EXTRA"]
for i in packages:
name= driver.find_element_by_xpath('//*[@id="productButtonControls_ST_%s"]/label' % i)
print name.text
您需要大量更改find_element_by_xpath->find_elements_by_xpathThanx!太简单了,我真的需要复习一下我的基础知识……)