# 选择需要的城市
cityEles = driver.find_elements_by_css_selector(
"#work_position_click_center_right_list_000000 em")
target = None
for cityEle in cityEles:
# 如果城市相同,找到
if cityEle == self.city:
target = cityEle
break
# 如果没找到城市
if target == None:
input(f'{self.city}不在热门城市列表中,请手动点击选中城市后,按回车继续...')
else:
target.click()
结果:
明明有匹配关系,却报不在列表中
排查:
print()输出获取到的cityEles内容,发现并不是一个城市的名字,所以获取的内容不应该是元素本身,而应该获取em元素下的文本,加上text,所以以下这行代码:
if cityEle == self.city:
应该改成:
if cityEle.text == self.city:
新手小坑。