WebBrowser C#[Neeb help]

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by cheater_man, 15 May 2010.

  1. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    акк
    Code:
    57206324;N8xXJ1Gt
    Нужно на
    http://www.icq.com/people/57206324/edit/
    Нажать кнопку сохранить.
    Вот она
    Code:
    				<div class="submitform">
    					<div class="submitcorner"></div>
    					<div class="submitbutton">Сохранить</div>
    				</div>
    
    И как же её нажать если у нее нет id?
     
  2. BrainDeaD

    BrainDeaD Elder - Старейшина

    Joined:
    9 Jun 2005
    Messages:
    774
    Likes Received:
    292
    Reputations:
    214
    submitbutton и должен быть id.

    Document.Forms[0].All["submitbutton"].InvokeMember("Click");
     
    #2 BrainDeaD, 15 May 2010
    Last edited: 15 May 2010
  3. HakaR

    HakaR Active Member

    Joined:
    23 Jul 2009
    Messages:
    301
    Likes Received:
    200
    Reputations:
    3
    А не проще ли не юзать webbrowser, а отправить запрос через пост\гет?
     
    #3 HakaR, 15 May 2010
    Last edited: 15 May 2010
    1 person likes this.
  4. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    не катит.
     
  5. BrainDeaD

    BrainDeaD Elder - Старейшина

    Joined:
    9 Jun 2005
    Messages:
    774
    Likes Received:
    292
    Reputations:
    214
    это был всего лишь пример. я не знаю значеня твоей формы в массиве, названийе твоего браузера и т.д.

    гугл в помощь http://www.google.com/search?client=opera&rls=en&q=Document.Forms%5B*%5D.All%5B*%5D.InvokeMember&sourceid=opera&ie=utf-8&oe=utf-8
     
  6. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    этот метод вообще не катит нужно что-то не оригинальное, т.к. у баттона нет id!
     
  7. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    не проще.
     
  8. need_million

    need_million Member

    Joined:
    29 Apr 2010
    Messages:
    158
    Likes Received:
    6
    Reputations:
    0
    проще гет\пост, фидлером2 отловил и передаешь так же потом
     
    1 person likes this.
  9. AlexTheC0d3r

    AlexTheC0d3r Elder - Старейшина

    Joined:
    25 Jul 2008
    Messages:
    388
    Likes Received:
    179
    Reputations:
    18
    http://zemus.us/05/smena-info-icq.html
    вот то, что тебе нужно
     
  10. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    отправляю пост запрос.
    Возникает проблема с русскими буквами.
    Например:
    отправляю слово: привет
    на сервер приходит:?????
    Code:
                   webBrowser1.Navigate("http://www.icq.com/people/" + emails[count - 1] + "/edit-submit",
                       "_self",
                       System.Text.ASCIIEncoding.ASCII.GetBytes(
                       "firstName=" + name1 +
                       "&friendlyName=" + nik1 +
                       "&aboutMe=" + aboutme +
                       "&gender=" + gender +
                       "&birthDateDay=" + day +
                       "&birthDateMonth=" + month +
                       "&birthDateYear=19" + birday +
                       "homeAddressCity=" + homesity +
                       "&homeAddressCountry=" + countriii),
                       "Content-Type: application/x-www-form-urlencoded\r\n");
    
    Да знаю что проблема в кодировке.
    Как решить проблему?
     
  11. need_million

    need_million Member

    Joined:
    29 Apr 2010
    Messages:
    158
    Likes Received:
    6
    Reputations:
    0
    HttpUtility.UrlEncode(строка, кодировка)
     
  12. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    В каком хотя-бы namespace'е это???
     
  13. AlexTheC0d3r

    AlexTheC0d3r Elder - Старейшина

    Joined:
    25 Jul 2008
    Messages:
    388
    Likes Received:
    179
    Reputations:
    18
    urlencoded

    Закодируй всю кирилицу

    и еще... если уже пост запросы отправляешь, нафига браузер используешь?
     
    1 person likes this.
  14. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    Это понятно :D :D
    Методы предлагайте какими это реализовать!!
    Как видишь пост запрос через webbrowser.
     
    #14 cheater_man, 17 May 2010
    Last edited: 17 May 2010
  15. greki_hoy

    greki_hoy Member

    Joined:
    4 Mar 2010
    Messages:
    326
    Likes Received:
    57
    Reputations:
    41
    2 cheater_man - например так

    Code:
    char *
    encode(unsigned char *url, char *out)
    {
    	char *ret = out;
    	while (*url)
    		out += sprintf(out, "%%%.2x", *url++);
    	return ret;
    }
    
     
  16. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    на асме еще покажи. Умник.

    http://msdn.microsoft.com/ru-ru/library/system.web.httputility.urlencode(VS.90).aspx

    первый результат в гугле. Тяжело скопировать!?
     
  17. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    Проблема решена:
    Code:
                   byte[] sentData = Encoding.GetEncoding(1251).GetBytes("firstName=" + System.Web.HttpUtility.UrlEncode(name1)+
                       "&friendlyName=" + System.Web.HttpUtility.UrlEncode(nik1) +
                       "&aboutMe=" + System.Web.HttpUtility.UrlEncode(aboutme) +
                       "&gender=" + gender +
                       "&birthDateDay=" + day +
                       "&birthDateMonth=" + month +
                       "&birthDateYear=19" + birday +
                       "&homeAddressCity=" + System.Web.HttpUtility.UrlEncode(homesity) +
                       "&homeAddressCountry=" + countriii
                     );
                   webBrowser1.Navigate("http://www.icq.com/people/" + emails[count - 1] + "/edit-submit",
                       "_self",sentData,"Content-Type: application/x-www-form-urlencoded\r\n");