Отправка записей на движок WikiMedia - C#
Формулировка задачи:
Всем привет!
У меня появилась необходимость переносить огромный словарь на Wiki ресурс. Немного поработав, я понял что делать это в ручную - себя не уважать и решил написать небольшую программку для автоматизации.
Немного быдлокода:
В цикле while (readit.Peek() >= 0) есть несколько строк, которые открывают страницу с необходимым названием на сайте и сохраняют контент. А в реальности цикл отрабатывает весь файл words (это видно по output.txt) но почему то открывает только страницу с последним словом и сохраняет ее. Я проверял ход кода, программа попадает на нужные строки, но тупо их игнорирует (что ли?). В общем взрыв мозга. Я первый раз работаю с классом WebBrowser, может там есть свои тонкости и т.д. Подскажите плиз. Мозг кипит.
public partial class Main : Form { string mainstring; string name; int pos; char[] wtd = { '\'', '.', ',' }; StreamReader readit = new StreamReader("words.txt"); StreamWriter writelog = new StreamWriter("log.txt", true); StreamWriter output = new StreamWriter("output.txt", true); public Main() { InitializeComponent(); } private void Go_Click(object sender, EventArgs e) { while (readit.Peek() >= 0) { mainstring = readit.ReadLine(); if (mainstring != "") { //Всякие хитрые манипуляции со строкой webBrowser.Navigate("http://some.wiki.net/index.php?title=" + name + "&action=edit"); webBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted); writelog.WriteLine(name + ": OK!"); output.WriteLine(mainstring); writelog.Flush(); output.Flush(); } } } void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { webBrowser.Document.GetElementById("wpTextbox1").SetAttribute("value", mainstring + "\n\n" + category.Text); webBrowser.Document.GetElementById("wpSave").InvokeMember("click"); }
Решение задачи: «Отправка записей на движок WikiMedia»
textual
Листинг программы
while (webBrowser.ReadyState != WebBrowserReadyState.Complete) { Application.DoEvents(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д