下面是我尝试使用chromdriver
识别的文本框的HTML片段
答案 0 :(得分:1)
您可以使用以下Xpath:
//input[@placeholder="Scan Serial No"]
使用多个属性
//input[@placeholder="Scan Serial No"][contains(@class,'FC2 ELX_UserPrompt')]
答案 1 :(得分:0)
为了获得选择器,我使用了一些技术。
首先,我使用Chrome开发者工具的内置工具。用ctr + shift + i打开它们。然后找到你想要的元素,ctrl + shift + c然后点击元素。这会在“元素”选项卡中突出显示所需的元素。右键单击突出显示的元素,然后选择复制>复制选择器。这将为您提供该项目的唯一css选择器。这适用于除了在页面上更改ID或位置的动态元素之外的所有内容。
对于动态元素,我使用高级css选择器。除了任何css属性之外,您还可以利用html标记来定位元素。这里有一篇关于如何使用这些https://www.smashingmagazine.com/2009/08/taming-advanced-css-selectors/#comments的文章。
对于特定元素,您可以执行input[placeholder='Scan Serial No']
答案 2 :(得分:0)
您可以使用以下xpath:
xpath中的类名称
//input[@class='FC2 ELX_UserPrompt binding_Screen_cc607e87_a82b_4cac_8c38_939be2ba00ff_SerialNo??']
类名和占位符
//input[@class='FC2 ELX_UserPrompt binding_Screen_cc607e87_a82b_4cac_8c38_939be2ba00ff_SerialNo??'][@placeholder='Scan Serial No']