想要定位出下拉框内的 “揽收时间”,代码如下:
time_type_expand = ('xpath', '//*[@id="app"]/div/div/div[2]/section/div/div[1]/div[1]/div[1]/form/div[4]/div/div[1]/div/span/span/i')
# 也尝试使用过 time_type_choose = ('xpath', 'li[2]')
time_type_choose = ('xpath', 'li[contains(text(),"揽收时间")]')
def searchBillRoute_with_time(self):
com = self.driver.find_element(*self.time_type_expand)
sleep(2)
com.find_element(*self.time_type_choose).click()
我的想法是 :先定位出ul,然后再定位下面的li元素 ,但是通过xpath、css等方式 都无法定位 ,也没有其他的唯一属性
求指教 如何定位出 “揽收时间 ”
time_type_choose = ('xpath', 'li[contains(text(),"揽收时间")]')这句试试写成:
time_type_choose = ('xpath', '//li/span[contains(text(),"揽收时间")]')或:'//li[@class="z-select-dropdown_item"]/span[contains(text(),"揽收时间")]
s='''<div class="z-select">
<li class="z-select-dropdown_selected">
<span>"创建时间"</span>
</li>
<li class="z-select-dropdown_item">
<span>揽收时间</span>
</li>
</div>
'''
from lxml import etree
html=etree.fromstring(s)
p = html.xpath(
'//li/span[contains(text(),"揽收时间")]')
print(p,p[0].text)
运行结果:
[<Element span at 0x20c05b63748>] 揽
收时间
定位揽收时间还是默认选择
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!