我正在尝试自动化Intranet站点。源代码是一堆表,包含数百个代码,如下所示:
<span id="GridView1_ctl51_lblCaseType"></span>
</td><td nowrap="nowrap">
<span class="fakeLink" title="Edit case" onmouseenter="this.focus()" onclick="editCase('286658')"> 286658</span>
</td><td nowrap="nowrap">1360428-0000</td><td align="center" style="color:Red;">
<span id="GridView1_ctl51_Label2">13,0</span>
</td><td align="center">
<span id="GridView1_ctl51_Label2">8,8</span>
</td><td align="center">
<span id="GridView1_ctl51_Label9">R</span>
</td><td>
<span id="GridView1_ctl51_Label6">Waiting for info fr. suppl.</span>
</td><td>
<span id="GridView1_ctl51_Label11" title="1360428-0000 Condensate Cup<br/>Price is missing, please update price<br/>(enquiry by Name 11/1)" class="vtip">1360428-0000 Co</span>
</td><td>
<span id="GridView1_ctl51_Label12" title="Please source" class="vtip">Please source</span>
</td><td>
<span id="GridView1_ctl51_Label7">Fname Lname</span>
</td><td>
<span id="GridView1_ctl51_Label1"></span>
</td><td>
<span id="GridView1_ctl51_Label8">Price or delivery time missing</span>
</td><td>
<span id="GridView1_ctl51_Label3">A21</span>
</td><td>
<span id="GridView1_ctl51_Label10">TS6</span>
</td><td>
<span id="GridView1_ctl51_Label5">FName Lname</span>
</td><td> </td>
我需要捕获零件号1360428-0000并单击“editCase(286658)”。我有两个问题:
我尝试使用以下代码找出问题#2但没有成功:
def IeTest():
driver = webdriver.Ie("C:\\Python34\\IEDriverServer.exe")
driver.get("http://intranet.company.com")
time.sleep(3)
print(driver.title)
elem = driver.find_element_by_xpath('//span[contains(@onclick,"286658")]')
elem.click()
IeTest()
感谢任何帮助。我也必须使用IE。
答案 0 :(得分:1)
这是一个可以通过部件号span
找到目标"1360428-0000"
的XPath:
//td[text()='1360428-0000']/preceding-sibling::td[1]/span[@title='Edit case']
<强> xpathtester.com demo
强>