Я пытаюсь загрузить информацию с веб-сайта, и я ударил (еще одну) кирпичную стену в долгом и утомительном путешествии, чтобы развить что-то продуктивное.
У меня есть программа, которая использует WebBrowser для входа на сайт - с действительными именем пользователя и паролем - тем самым позволяя мне установить законное соединение с ним и получать от него информацию (свою).
На начальной странице, предоставленной мне после входа в систему, я могу использовать WebBrowser.Document.GetElementsByTagName("A")
, WebBrowser.Document.GetElementById("Some Id")
и т. Д., Чтобы обойти сайт и обработать все события DocumentCompleted , возвращенные до ... Я попадаю на страницу, которая, кажется, имеет встроенный TabControl .
Мне нужно иметь возможность выбрать среднюю вкладку этого элемента управления и извлечь информацию, которую он содержит. Когда я получаю доступ к этой информации «нормально» (то есть из IE, а не из моей программы WebBrowser ), я могу щелкнуть по каждой из трех вкладок, и информация должным образом появляется - так что ее там, мучительно так ... но могу ли я манипулировать этими вкладками из моей программы? Я чувствую, что это возможно, но я не понимаю, как я могу это сделать.
Проблема проявляется потому, что когда я обрабатываю страницу с вкладкой, мой код выглядит следующим образом:
static void wb_TabPage(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser wb = (WebBrowser)sender;
HtmlElement element;
element = wb.Document.GetElementById("Bills"); // Find the "Bills" tab
element.InvokeMember("Click"); // Click the "Bills" tab
// Unhook THIS routine from DocumentCompleted delivery
wb.DocumentCompleted -= new WebBrowserDocumentCompletedEventHandler(wb_TabPage);
// Hook up this routine - for the next 'Document Completed' delivery - which never arrives!
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_Bills);
return;
}
И в этом проблема - больше документов «не завершено» для меня, чтобы обработать, даже после InvokeMember («Click»). Для всего мира кажется, что вкладки обновляются на месте, и никакие обновления (ing), навигация или обработка событий не позволят мне добраться до места или в месте, где я могу получить от них данные
Кто-нибудь знает, как я могу это сделать? Кто-нибудь знает, как управлять вкладками из WebBrowser? Заранее спасибо, если вы делаете ...