使用Selenium检索数据

使用Selenium检索数据,selenium,information-retrieval,Selenium,Information Retrieval,我想从靠近我的丰业银行分行获得营业时间 基本URL为: 我那么 单击“分支”无线电框 点击“开放周六”复选框 在搜索框中输入“B3H 1M7”(我的邮政编码) 单击搜索按钮 单击弹出的第一个结果(Micmac购物中心) 将营业时间存储为变量(称为businessHours) 现在我被卡住了 如何将分配给变量的数据导出到文本文件或以后可以查看的任何其他地方? 我不确定硒是否有可能做到这一点,但如果没有,你能告诉我另一种方法吗 下面是我拥有的当前Selenium脚本的HTML代码 <tr>

我想从靠近我的丰业银行分行获得营业时间

基本URL为:

我那么

单击“分支”无线电框

点击“开放周六”复选框

在搜索框中输入“B3H 1M7”(我的邮政编码)

单击搜索按钮

单击弹出的第一个结果(Micmac购物中心)

将营业时间存储为变量(称为businessHours)

现在我被卡住了

如何将分配给变量的数据导出到文本文件或以后可以查看的任何其他地方? 我不确定硒是否有可能做到这一点,但如果没有,你能告诉我另一种方法吗

下面是我拥有的当前Selenium脚本的HTML代码

<tr>
    <td>open</td>
    <td>/en/index.php</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>rb_branch</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>cb_saturday</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>input_address</td>
    <td>B3H 1M7</td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>btn_search_address</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>result0</td>
    <td></td>
</tr>
<tr>
    <td>storeTextPresent</td>
    <td>Mon:    9:30 AM - 5:00 PM    Thu:    9:30 AM - 8:00 PM
<br />Tue:    9:30 AM - 5:00 PM    Fri:    9:30 AM - 5:00 PM
<br />Wed:    9:30 AM - 5:00 PM    Sat:    9:00 AM - 1:00 PM</td>
    <td>businessHours</td>
</tr>

打开
/en/index.php
点击
RBU分行
点击
星期六
类型
输入地址
B3H1M7
单击并等待
搜索地址
点击
结果0
storeTextPresent
星期一:上午9:30至下午5:00星期四:上午9:30至晚上8:00

星期二:上午9:30-下午5:00星期五:上午9:30-下午5:00
星期三:上午9:30-下午5:00星期六:上午9:00-下午1:00 营业时间
这里有一个想法-如果你不能写入文件或数据库,你当然可以编写快速的小web应用程序,让selenium输入数据并单击提交

假设您只想使用Selenium Core和/或IDE,并且希望持久保存此信息,那么您可以尝试通过javascript调用将其发送到某种类型的免费在线服务。Selenium可以通过eval调用执行任意一段javascript(示例)

一个可能的建议是一个twitter帐户(或其他带有简单API的免费在线公共服务)。生成的bookmarklet的修改可以将您想要的任何信息发布到twitter帐户

另一种选择可能是谷歌文档或其他在线笔记服务

如果您真的不需要Selenium来保存信息,但希望在执行结束时将其聚合并显示,您可以将每组工作时间存储在一个变量中,并随附,然后让您的最后一个操作是评估javascript,该javascript将弹出一个带有结果的警报框。然后可以手动使用警报框中的数据

只是一些想法。祝你好运。

编辑-

下面是一个存储值、检索值以及通过google主页上的eval和runscript方法执行任意javascript的示例:

<tr>
    <td>open</td>
    <td>/</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>q</td>
    <td>dog</td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>btnG</td>
    <td></td>
</tr>
<tr>
    <td>storeValue</td>
    <td>q</td>
    <td>searchWord</td>
</tr>
<tr>
    <td>assertValue</td>
    <td>q</td>
    <td>${searchWord}</td>
</tr>
<tr>
    <td>assertEval</td>
    <td>alert(&quot;${searchWord}&quot;);</td>
    <td>null</td>
</tr>
<tr>
    <td>runScript</td>
    <td>alert(&quot;${searchWord}&quot;);</td>
    <td></td>
</tr>
<tr>
    <td>assertAlert</td>
    <td>dog</td>
    <td></td>
</tr>

打开
/
类型
Q
狗
单击并等待
btnG
存储价值
Q
搜索词
资产价值
Q
${searchWord}
资产价值
警报(“${searchWord}”);
无效的
运行脚本
警报(“${searchWord}”);
资产负债表
狗

您可以从Selenium IDE导出测试以与Selenium RC一起使用。然后,使用您选择的编程语言,您可以将其写入文件或数据库。

谢谢。我会把这个问题再留待一段时间,看看是否还有其他人有其他选择。没问题。祝你好运找到解决办法。如果你在这个论坛之外找到一个,请为每个人发布。我刚刚查看了这个示例,但它对我没有帮助,因为该帖子的回复没有说明如何调用javascript函数。编辑更有用,但我担心除非我学会,否则我将无法使用javascript。现在我已经学到了很多新东西,我想从学习一些全新的东西中休息一下。我也把这个问题贴在了其他地方。那里也没有解决。希望这能用一个简单的解决方案来解决。我在网上搜索过这些东西,但这个领域似乎还没有被触及。