Python&;Selenium基于同一行中的另一个td单击一行中的td值
我试图找出如何基于另一个td中的值右键单击td。从下面的代码开始,我们只是试图找到一个初始单元格并单击该值。如果我能让它起作用,我想右键单击文本为“Requested”的同一行中的一个值。该表是动态的,因此列可以是任意顺序。比如说。找到名称“Howard Johnson”,然后右键单击state列中请求的值。(见附图) 输出为-回溯(最近一次调用last):Python&;Selenium基于同一行中的另一个td单击一行中的td值,python,selenium,html-table,Python,Selenium,Html Table,我试图找出如何基于另一个td中的值右键单击td。从下面的代码开始,我们只是试图找到一个初始单元格并单击该值。如果我能让它起作用,我想右键单击文本为“Requested”的同一行中的一个值。该表是动态的,因此列可以是任意顺序。比如说。找到名称“Howard Johnson”,然后右键单击state列中请求的值。(见附图) 输出为-回溯(最近一次调用last): 选择要操作的记录 2018-07-30 06:36:23 07-30 06:36 500万年前 选择要操作的记录 2018-07-30
选择要操作的记录
2018-07-30 06:36:23
07-30 06:36
500万年前
选择要操作的记录
2018-07-30 06:36:23
07-30 06:36
500万年前
选择要操作的记录
2018-07-30 06:36:23
07-30 06:36
500万年前
选择要操作的记录
2018-07-30 06:36:23
07-30 06:36
500万年前
选择要操作的记录
2018-07-30 06:36:23
07-30 06:36
500万年前
您可以使用以下xpath:
//a[text()='Luke Wilson']/parent::td/preceding-sibling::td[@class='vt']/a
请注意,基于名称Luke Wilson,它将为您提供请求的超链接,您可以使用该超链接右键单击
如果希望脚本动态选择该名称:
name = Luke Wilson
//a[text()='"+name+"']/parent::td/preceding-sibling::td[@class='vt']/a
希望能有所帮助。好吧,当你在同一行中手动右键单击时,会发生什么?右键单击你会得到一个选项菜单。我会附上一张截图,我会给你一个快照。事实上,我认为我可以右键单击名称本身,这将使它更容易,正如您所说的,基于
Howard Johnson
name,您希望右键单击请求的超链接。这就是我给你xpath的原因。谢谢你的帮助。第一个有效。第二个变量不起作用。我猜它很难找到文本,可能是因为我没有得到正确的格式。我不得不在变量中加上双引号,比如so->name='Luke Wilson'是的,这可能是因为单双引号。如果这个答案对你有效,请接受这个答案。请把这归功于帮助你的人。
//a[text()='Luke Wilson']/parent::td/preceding-sibling::td[@class='vt']/a
name = Luke Wilson
//a[text()='"+name+"']/parent::td/preceding-sibling::td[@class='vt']/a