所以,我正在尝试自动从服务器获取备份。 使用RIDE 1.5 - 机器人框架: 登录服务器站点,生成新备份,下载文件。
现在要下载文件,需要单击链接,系统会生成备份文件名,每次使用新备份时都会更改。我无法改变命名方案。
创建备份后,页面上会显示备份文件名。
是否有某种方法可以动态地在变量中选择和存储该名称,然后可以使用该方法下载文件。
创建新备份文件时,页面上会显示名称:docs - 2016年1月12日612.bak
更新
所以我明白了:
$ {backup 2}获取文字xpath = // span [@id =' OuterMainContent_MainContent_ResponseMessage1_lblMessage']
$ {backup 1} =从左边获取$ {backup 2}"创建
$ {备份文件名} =从正确的$ {备份1}文件中获取"
现在:有没有办法让机器人点击浏览器的下载确定。
<link href="styles.css" rel="stylesheet" type="text/css" />
<div id="OuterMainContent_MainContent_ResponseMessage1_pResponse" class="responseTable">
<table id="OuterMainContent_MainContent_ResponseMessage1_responseTable" width="100%" border="0" cellpadding="2">
<tr>
<td valign="top" width="150">
<span id="OuterMainContent_MainContent_ResponseMessage1_lblTitle" class="responseTitle">Completed:</span>
</td>
<td> <div id="OuterMainContent_MainContent_ResponseMessage1_pContainer">
<span id="OuterMainContent_MainContent_ResponseMessage1_lblMessage" class="responseMessage">Backup file "docs - 12 Jan 2016 612.bak" created successfully for Database docs<BR>It has been copied to the App_data folder of the docs Domain.</span>
<input type="hidden" name="ctl00$ctl00$OuterMainContent$MainContent$ResponseMessage1$hAction" id="OuterMainContent_MainContent_ResponseMessage1_hAction" />
<input type="hidden" name="ctl00$ctl00$OuterMainContent$MainContent$ResponseMessage1$hParameter" id="OuterMainContent_MainContent_ResponseMessage1_hParameter" />
</div>
</td>
</tr>
</table>
</div>
答案 0 :(得分:0)
在下载方面,Selenium不是很可靠,因为它的目的是测试网页而不是文件下载。
您应该通过在下载链接/按钮WebElement上调用GetAttribute(&#34; href&#34;)来获取URL,然后在可能的情况下处理Selenium以外的下载。