新手区 python+selenium 如何实现网页表格中某个属性等于 XX 时,打印另外个属性

动静随心 · 2017年10月20日 · 最后由 邹小白2021 回复于 2018年04月23日 · 2391 次阅读


例如:有这个一个表格,一页有 10 行,当某一行的三列是订阅号时,就打印第五列的 URL,如何实现呢,求教!

目前我是这么写的
table = driver.find_element_by_xpath("//*[@id='indexMgrTable']/tbody")# 定位表格
table=table.find_elements_by_tag_name('tr') # 定位每一行,找多个 element 的时候要加 s

后面想用 for 循环和 if 进行判断,但是不知道具体怎么写!

共收到 3 条回复 时间 点赞

trlist=driver.find_element_by_id("indexMgrTable").find_elements_by_tag_name("tr") # 定位所有的 tr
for tr in trlist:
# 获取 tr 中的所有 td
tdlist=tr.find_elements_by_tag_name("td")
if len(tdlist)>0:
# 获取 td[2] 的文本
text=tdlist[2].text
# 当 td[2] 的内容为订阅号时,打印 url
if text=="订阅号":
print(tdlist[4].text)

三天打渔 回复

为什么我的缩进不见了

用 xpath 定位元素://*[text()='订阅号']/following-sibling::tr[2]

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册