【问题标题】:How to make a web bot? (or something)如何制作一个网络机器人? (或者其他的东西)
【发布时间】:2010-12-03 07:12:39
【问题描述】:

我需要以编程方式注册到网站。我是用 VB6(使用 IE Web 浏览器组件)完成的,但我不知道如何使用 WebBrowser 在网站上编辑文本框。我不需要用 Webbrowser 来做,只是我知道它可以用它来做。我只需要使用我的程序插入用户名、密码等。

谢谢

【问题讨论】:

  • 你所说的“或其他东西”是指“我想做一个'网络机器人',或者真的,其他任何东西都可以”?如果是这样,然后在表单上放置一个文本框,使其成为多行并停靠它,您将获得一个没有加载或保存功能的廉价记事本仿冒品。反正就是这样……

标签: c# .net bots


【解决方案1】:

还可以查看 Watin 项目:http://www.codeproject.com/KB/aspnet/WatiN.aspx

它更多地用于网络应用测试,但对于自动化网络表单,它具有开箱即用的强大功能。

对于更中性的解决方案,您可能还想查看:http://seleniumhq.org/ 同样,它是一个 Web 应用测试框架,但它对您想要的很有用。

HTH 亚历克斯

【讨论】:

  • 现在 WatiN 不支持最新版本的浏览器。有没有其他和WatiN非常相似的产品?谢谢
【解决方案2】:

尝试查看WATin。 IT 将允许您从 C# 自动化浏览器。

它还有一个可以提供帮助的录音机。

您可以使用 HttpWebRequest,但如果开源组件 (Watin) 不是问题,则该任务将花费更少的时间来完成。

善良,

【讨论】:

  • 它有内置录音机吗?我见过其他添加此功能的项目
【解决方案3】:

感谢大家,我找到了使用 WebBrowser 的方法,但 WatiN 看起来更好。

    webBrowser1.Navigate("http://www.somewebsite.com/register.php");
    //Wait until website is loaded
    do
    {
        Application.DoEvents();
    }
    while (webBrowser1.IsBusy == true);
    webBrowser1.Document.GetElementById("username"
        ).SetAttribute("value", textBox1.Text);
    //etc.

【讨论】:

    【解决方案4】:

    您可以使用HttpWebRequest 类和POST 方法。

    【讨论】:

      【解决方案5】:

      取决于是否总是找到具有您不想要的类值的第一个跨度,第二个您可以使用标志跳过它

      var variable = ie.Span(Find.ByClass("TheClass")).Text;
      var x = 0;
      
      if(variable != "" && x == 0){
      
      var variable2=variable
      
      }else{
      x++
      }
      

      这样你只在“variable2”中保留你想要的实际东西,你可以调整相同的代码来跳过第一个并保留第二个。而不是跳过第二个并保留第一个。对不起我的英语不好:c

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多