0

我正在使用 WatiN 使用从第 1-10 页开始的迭代循环逐页浏览网站,然后单击右箭头继续,等等。示例: Page:1 2 3 4 5 6 7 8 9 10

我在用:

browser.Link(Find.ByText(i.ToString())).Click(); doc.LoadHtml(浏览器.Html);

我面临的问题是,有一个带有“优化搜索”的侧边栏,其中包含与“2”、“3”、“4”等相同文本的链接。所以不是点击顶部的页码,WatiN 是单击带有该文本的第一个链接,这会破坏我的结果。

WatiN 有没有办法删除浏览器的一部分,比如侧边栏、标题等,以便它只加载我想要的主表?然后将浏览器加载到文档中?

或者任何其他建议都会很棒!

4

1 回答 1

0

看看细化你的选择。更像是broswer.Div("theDivIDwithPageNumbers").Link(Find.ByText)..... 你也可以使用多个选择器,比如Link(Find.ByText("blah") && Find.ByIndex(3)).Click();

我强烈推荐第一种尝试更明确地定义它的方法,而不是通过索引或其他相关的东西。结合显式声明和使用 Page 类是非常好的。如果这些对于页面结构/路径/等都没有意义,请阅读以上所有内容并修改 IE F12 工具和/或 Firefox 中的 Firebug。

于 2012-09-25T21:38:02.413 回答