要登录站点,请转到特定页面(例如本地路由器页面)并单击按钮进行操作(例如,连接)。因为我几乎每天都这样做,所以我想通过小型C#应用程序实现自动化。我不知道怎么做。有什么指针吗?
答案 0 :(得分:1)
使用像Fiddler这样的工具捕获HTTP请求的内容。有了这些信息,您就可以构建一个执行这些HTTP请求的应用程序。
答案 1 :(得分:1)
使用
跟踪您发送的HTTP请求然后使用System.Net
命名空间中的类(例如WebClient
)来执行相同的请求。
答案 2 :(得分:1)
为什么只需点击一次代码C#
?试试AutoIt。
这是starter tutorial。这将帮助您快速自动单击应用程序的默认按钮。来自AutoIt的更多技巧,您几乎可以通过手机告诉某人在GUI上做任何事情。
AutoIt是一个非常有用的工具,如果您正在使用GUI测试或者梦想编写大量常规GUI活动的脚本,那么它就可以随时使用。
答案 3 :(得分:1)
您还可以使用Selenium IDE,这是一个FireFox插件,允许您录制宏像脚本,以便在浏览器中播放。它专为自动测试网页而设计,但您可以使用C#导出脚本,而C#又可以从控制台应用程序运行。
如果您打算将其作为C#应用运行,则还需要查看Selenium RC。
快乐脚本:)
答案 4 :(得分:0)
我在C#中创建了使用Microsoft提供的WebBrowser控件的应用程序 并用它来打开一个网站,并试图操纵它的HTML并尝试将值放入 一些文本框并试图按下它对我有用的按钮,希望它对你也有帮助 示例代码如下
internal void LoginToSite()
{
WebBrowser.Navigate("some site login Page");
_Processing = true;
var username = ConfigurationManager.AppSettings["username"];
var password = ConfigurationManager.AppSettings["password"];
while (_Processing)
{
Application.DoEvents();
if (WebBrowser.ReadyState == WebBrowserReadyState.Complete || WebBrowser.ReadyState == WebBrowserReadyState.Interactive)
{
var htmlDocument = this.WebBrowser.Document;
if (htmlDocument != null)
{
foreach (HtmlElement tag in htmlDocument.GetElementsByTagName("input"))
{
switch (tag.Name)
{
case "username":
tag.InnerText = username;
break;
case "password":
tag.InnerText = password;
break;
case "cmdlogin":
tag.RaiseEvent("onclick");
tag.InvokeMember("Click");
break;
}
}
}
_Processing = false;
}
}
}