我可以列出所有 title ="第1场比赛" ,"比赛2" &#34 ;比赛3" 然后使用来自下载HTML的python
driver.find_element_by_name('title=Race1').click()
然后逐个点击,这意味着总点击3次。首先点击"比赛1" ,第二次点击"比赛2" ,然后点击"比赛3&# 34; ,谢谢!
<table border="0" cellspacing="0" cellpadding="0">
<tbody><tr>
<td style="padding-right:3px;">Race</td>
<td class="raceButton" style="PADDING-LEFT:3px"><a href="/racing/pages/odds_wp.aspx?lang=EN&date=06-06-2018&venue=HV&raceno=1" onmouseout="MM_swapImgRestore();" onmouseover="MM_swapImage('race_num_1', '', '/racing/info/images/num_1_on.gif?CV=L209R1d',1);"><img id="raceSelBtn1" src="/racing/info/images/num_1_on.gif?CV=L209R1d" border="0" title="Race 1"></a></td>
<td class="raceButton" style="PADDING-LEFT:3px"><a href="/racing/pages/odds_wp.aspx?lang=EN&date=06-06-2018&venue=HV&raceno=2" onmouseout="MM_swapImgRestore();" onmouseover="MM_swapImage('race_num_2', '', '/racing/info/images/num_2_on.gif?CV=L209R1d',1);"><img id="raceSelBtn2" src="/racing/info/images/num_2.gif?CV=L209R1d" border="0" title="Race 2"></a></td>
<td class="raceButton" style="PADDING-LEFT:3px"><a href="/racing/pages/odds_wp.aspx?lang=EN&date=06-06-2018&venue=HV&raceno=3" onmouseout="MM_swapImgRestore();" onmouseover="MM_swapImage('race_num_3', '', '/racing/info/images/num_3_on.gif?CV=L209R1d',1);"><img id="raceSelBtn3" src="/racing/info/images/num_3.gif?CV=L209R1d" border="0" title="Race 3"></a></td>
</tr>
</tbody></table>
答案 0 :(得分:2)
<img id="raceSelBtn1" src="/racing/info/images/num_1_on.gif?CV=L209R1d" border="0" title="Race 1">
driver.find_element_by_name('title=Race1').click()
无法正常工作,因为您想要的节点没有名称属性!
您可以通过find_element_by_id('raceSelBtn1
)`
但是既然你想要一个webelements列表,你将不得不使用find_elements_by_xpath()
方法(复数)。当您使用find_elements_by_xxx
时,它会返回一个符合您给定位置策略的webelements列表。然后,您可以遍历此列表以对单个元素执行操作。
请尝试以下代码段。
buttons_list = driver.find_elements_by_xpath("//img[contains(@title, 'Race')]")
for button in buttons_list:
button.click()
答案 1 :(得分:1)
首先,
您尝试点击的元素似乎是img
。因此,如果您想要找到链接本身,您可以尝试获取图像父级(通过xpath)。
您可以这样做:
for i in range(1,4):
img_btn = driver.find_element_by_id('raceSelBtn{}'.format(i))
btn_link = img_btn.find_element_by_xpath('..') # Get img parent, the link
btn_link.click()