Проблема с автоматическим входом на веб-страницу - PullRequest
0 голосов
/ 01 декабря 2018

Я пытаюсь создать автоматический вход на веб-страницу и отображать страницу при входе через консольное приложение.Я также создал XML, чтобы пользователь мог добавить информацию для входа в XML, а не код Vai.Приложение будет искать данные для входа на странице XML, а затем войти на веб-страницу.Я использую WatIn, чтобы сделать это, но я получаю [не могу конвертировать из 'Watin.Core.Constraints.Attribute Constraint' в 'System.Text.RegularExpressions.Regex'], кто-то может мне помочь с этим или направить меня к лучшему методу выполненияthis.

Мой код C #:

class Program
{
    private static string url;
    private static string username;
    private static string password;
    private static string webUserID;
    private static string webPassID;
    private static string webLoginID;

    [STAThread]
    static void Main(string[] args)
    {
        string path = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "TheXMLFile.xml");
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(path);

        foreach (XmlNode n in xmlDoc.DocumentElement.ChildNodes)
        {
            if (n.Attributes["key"].Value == "url")
            {
                url = n.Attributes["value"].Value;
            }
            if (n.Attributes["key"].Value == "username")
            {
                username = n.Attributes["value"].Value;
            }
            if (n.Attributes["key"].Value == "password")
            {
                password = n.Attributes["value"].Value;
            }
            if (n.Attributes["key"].Value == "webUsernameID")
            {
                webUserID = n.Attributes["value"].Value;
            }
            if (n.Attributes["key"].Value == "webPasswordID")
            {
                webPassID = n.Attributes["value"].Value;
            }
            if (n.Attributes["key"].Value == "webLoginButtonID")
            {
                webLoginID = n.Attributes["value"].Value;
            }
        }

        RunOnStaThread<object>(() =>
        {
            IE ie = new IE(url);

            ie.FindText(Find.ById(webUserID)).TypeText(username);  //This is where the error is.
            ie.FindText(Find.ById(webPassID)).TypeText(password);  //This is where the error is.
            ie.Button(Find.ByValue(webLoginID)).Click();

            return null;
        });
    }

Мой XML:

<?xml version="1.0" encoding="utf-8" ?> 
  <Website>
   <Url key="url" value="webpage url" />
   <Username key="username" value="Login details" />
   <Password key ="password" value="Login password" />
   <WebUsernameID key="webUsernameID" value="username" />
   <WebPasswordID key="webPasswordID" value="password" />
   <WebLoginButtonID key="webLoginButtonID" value="submit" />
  </Website>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...