Автозаполнение формы входа в Facebook

1

Я новичок в facebook SDK 6.0.10.0 для С#/Windows Form

Я пытаюсь найти решение для автоматического заполнения поля имени пользователя и пароля со страницы входа в мой компонент WebBrowser. Хранение токена не является решением, в моем случае я тестирую клиентское приложение с 5 различными учетными записями, и я трачу на это слишком много времени.

Это мой HTMLDocument, созданный из моего элемента управления WebBrowser: http://pastebin.com/3Xy49vLG

Как я могу автоматизировать работу и не терять много времени при тестировании?

Теги:
winforms
webbrowser-control
facebook-c#-sdk

1 ответ

2
Лучший ответ

Мой ответ не использует Facebook SDK, он просто использует элемент управления System.Windows.Forms.WebBrowser с загруженной веб-страницей http://facebook.com, имеющей следующие элементы управления html входа в правом верхнем углу:

Изображение 174551

    public void LoginToFaceBook(System.Windows.Forms.HtmlDocument doc, string email, string password)
    {
        //<input name="email" tabindex="1" class="inputtext" id="email" type="text" value="">
        doc.GetElementById("email").SetAttribute("value", email);
        //<input name="pass" tabindex="2" class="inputtext" id="pass" type="password">
        doc.GetElementById("pass").SetAttribute("value", password);
        //<input tabindex="4" id="u_0_n" type="submit" value="Log In">
        doc.GetElementById("u_0_n").InvokeMember("click");
    }

    /// <remarks>Should be logged-in to call this method</remarks>
    public void LogOutFromFaceBook(System.Windows.Forms.HtmlDocument doc)
    {
        // <input class="uiLinkButtonInput" type="submit" value="Log Out" />
        (from tag in doc.GetElementsByTagName("input").OfType<System.Windows.Forms.HtmlElement>()
         where tag.GetAttribute("className") == "uiLinkButtonInput" &&
                       tag.GetAttribute("type") == "submit" &&
                       tag.GetAttribute("value") == "Log Out"
                 select tag).First().InvokeMember("click");           
    }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню