Winforms 如何自动点击网页链接?
下面的代码就是我需要点击的链接所在 我已经找到了如何浏览网站并以编程方式登录网站的方法。但是,现在我需要能够自动导航的网站,我还没有能够管理这一点 包含“时钟输入”的行是我需要单击的链接 我不熟悉编码。这是我的第一个项目 对不起。我没有意识到我先前的复制/粘贴被缩短了。我已经更正了包含链接的行 再次感谢你Winforms 如何自动点击网页链接?,winforms,visual-studio-2010,c#-4.0,Winforms,Visual Studio 2010,C# 4.0,下面的代码就是我需要点击的链接所在 我已经找到了如何浏览网站并以编程方式登录网站的方法。但是,现在我需要能够自动导航的网站,我还没有能够管理这一点 包含“时钟输入”的行是我需要单击的链接 我不熟悉编码。这是我的第一个项目 对不起。我没有意识到我先前的复制/粘贴被缩短了。我已经更正了包含链接的行 再次感谢你 <div id="dockedContent" class="dockedContent"> <div id="RecentlyVisitedWidget" cla
<div id="dockedContent" class="dockedContent">
<div id="RecentlyVisitedWidget" class="recentlyVisitedWidget">
<h2 id="ctl00_12_12_RecentlyVisitedLabel"></h2>
<ul class="recentlyVisitedLinks">
<li>
<span id="ctl00_12_12_Repeater1_ctl00_link">
<a href="#" onclick="recentlyVisitedSelect('pages/VIEW/UTMEntry.aspx?USParams=PK=ESS!MenuID=2147!PageRerId=2147!ParentRerId=72','72','2147','2147', false, false, 'Time Clock Entry', true)" title="Time Clock Entry">Time Clock Entry</a>
</span>
</li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
-
您可以找到以下链接:
HtmlElement link = (from HtmlElement elem in webBrowser.Document.GetElementsByTagName("a")
where elem.GetAttribute("title") == "Time Clock Entry"
select elem).ElementAt(0);
link.InvokeMember("Click");
这基本上是说“获取文档中的所有a
标记(以及所有链接),然后进行过滤,以便我只获取标题为时钟条目的a
标记。完成后,给我第一个这样的元素。”
然后通过以下程序单击它:
HtmlElement link = (from HtmlElement elem in webBrowser.Document.GetElementsByTagName("a")
where elem.GetAttribute("title") == "Time Clock Entry"
select elem).ElementAt(0);
link.InvokeMember("Click");
可能是重复的?这让我比以前更接近了。我理解它的逻辑,我只是没有足够的经验来解决我从第一个lin…System.Windows.Forms.HtmlElementCollection中得到的错误。HtmlementCollection不包含“Where”的定义,并且没有扩展方法,其中可以找到“接受”System.Windows.Forms.HtmlementCollection类型的第一个参数(您是否缺少using指令或程序集引用?@SeanConnelly噢,糟糕,我没有意识到HtmlElementCollection
不是从任何集合派生的,而是从对象派生的。我会立即修复我的答案。@SeanConnely编辑并测试过{“指定的参数超出了有效值的范围。\r\n参数名称:索引”}