当我将鼠标悬停在图像上时,我想存储图像中显示的文字。该图片位于此页https://www.magiccardmarket.eu/Products/Singles/Dragons+of+Tarkir的表格中,第一张图片包含以下xpath //div[@id='siteContents']/div[2]/div[2]/div/form/table.1.3
。该表元素的html代码包含以下内容:
<span onmouseover="showMsgBox('Dragons of Tarkir')"></span>
我想存储showMsgBox的内容。看来我需要知道一些Javascript来驱动Selenium IDE。到目前为止,我发现的是question about how to extract text with xPath,这里是how the Javascript function slice works。然后我认为它应该是这样的:
storeText | //div[@id='siteContents']/div[3]/div[2]/table/tbody/tr[1]/td[2]/a/span/@onmouseover | exp
storeEval | exp = exp.slice(12, -2); | expansion
但它给我一个并不能说太多的错误。
答案 0 :(得分:0)
我捕获了属性,而不是使用substring来解析它的值。
<tr>
<td>storeAttribute</td>
<td>//html/body/section/div[1]/div/div[3]/div[2]/table/tbody/tr[1]/td[4]/img@onmouseover</td>
<td>fullval</td>
</tr>
<tr>
<td>echo</td>
<td>${fullval}</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>str="${fullval}"; str.substring(12, str.length-2)</td>
<td>final</td>
</tr>
<tr>
<td>echo</td>
<td>${final}</td>
<td></td>
</tr>
请注意,我使用字符串的长度 - 2表示“停止”点。
或者,由于这些图像具有包含该值的ALT标记,因此只需使用:
<tr>
<td>storeAttribute</td>
<td>//html/body/section/div[1]/div/div[3]/div[2]/table/tbody/tr[1]/td[4]/img@alt</td>
<td>fullval</td>
</tr>
<tr>
<td>echo</td>
<td>${fullval}</td>
<td></td>
</tr>