阅读 Watin 中的 DOM
我正在研究 watin 脚本,该脚本可以读取电子商店上的表格。在此测试中,我必须读取某些商品的价格,但我总是从页面上的第一个商品获取信息。 我知道关键字,并且应该读取“usd”和“eur”中的值。
请帮忙。
表格示例
<table class="item available">
<tbody>
<tr>
<td class="img-block skyblue-links">
<td class="detail">
<div class="title">
<a href="http://...">KEYWORD</a>
</div>
<p>
<table>
<tbody>
<tr>
<td class="price-status">
<div class="status">
<div class="price">
<div class="eur">
17096
<span>
</div>
<div class="usd">$ 2 129</div>
</div>
<div class="to-buy-link" name="buy_catalog">
</td>
<td class="rating-performance">
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
I'm working on watin script which read forms on e-shop. In this test I must read price of some items, but always I got information from the first item on the page.
I know the KEYWORD, and should read values from "usd" and "eur".
Please help.
Example of table
<table class="item available">
<tbody>
<tr>
<td class="img-block skyblue-links">
<td class="detail">
<div class="title">
<a href="http://...">KEYWORD</a>
</div>
<p>
<table>
<tbody>
<tr>
<td class="price-status">
<div class="status">
<div class="price">
<div class="eur">
17096
<span>
</div>
<div class="usd">$ 2 129</div>
</div>
<div class="to-buy-link" name="buy_catalog">
</td>
<td class="rating-performance">
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个快速而肮脏的示例
基本步骤:
如果我有到时候我会把这个例子转换成一个控件。您可以发布两个项目的 HTML 示例吗?
2011 年 2 月 4 日更新:
前面的示例有很多关于 html dom 结构的知识,下面的代码确实将这些知识抽象为可重用的控件。这提供了有关项目 dom 结构的单点事实,使其可重用并保持(测试)代码干净。
Item 控件的范围是包含项目信息的表。我需要一个包含 2 个项目的示例来解决这个问题。这些项目表通过它们具有包含“项目”的类名这一事实来“识别”。控件内的所有元素查找都是在匹配表的范围内完成的。
哈特哈,
杰罗恩
Here is a quick and dirty example
Basic steps:
If I have time I'll convert this example into a Control. Could you post example HTML for two items?
update 4 feb 2011:
Previous example had a lot of knowledge of the html dom structure, the following code does abstract this knowledge into a reusable control. This provides one single point of truth regarding the dom structure of an item, makes it reusable and keeps your (test) code clean.
The Item control's scope is the table with the item information. I needed an example with 2 items to figure this out. These item tables are "recognized" by the fact they have a class name containing "item". All element lookups inside the control are done within the scope of the matching table.
HTH,
Jeroen