Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Программа на vb.net несколько вопросов.

Ответить
Настройки темы
.NET - Программа на vb.net несколько вопросов.

Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: Delirium
Дата: 11-10-2012
Описание: Применяем теги оформления!
Всем привет! У меня несколько вопросов.
1) каким образом можно заливать файлы через форму для залива файлов. например в такую

Код HTML
1
2
3
4
Код: Выделить весь код
<input class="input" name="uploadfile" value="" type="file">
<input class="bt" name="doupfile" value="Upload" type="submit">
<input name="uploaddir" value="/home/тут_был_путь" type="hidden">
<input name="dir" value="/home/тут_был_путь" type="hidden">
2) каким образом можно осуществлять поиск по странице?
3) не все сервера обладают хорошим каналом. с некоторых страницу приходится ждать секунд по 15 а то и 30. это никак не повлияет на работу программы, суть которой ходить по ссылкам да вводить значения в формы? если как-то повлияет, то как устранить влияние?
4) соединю вопросы 2 и 3: страница может загружаться медленно, но поиск в этот момент то уже начнется! как сделать так, чтобы поиск был только после загрузки страницы?
5) результатом работы программы будет появление страницы с 1 единственным полем и кнопкой login. но часто бывает так, что из-за некоторых особенностей на странице появляются ошибки, которых не должно быть иначе созданный скрипт будет не правильно работать. для этого исправления нужно сделать некоторые действия. так вот, как распознать есть ли эти ошибки на странице или нет, ошибки разные поэтому лучше всего получается проверять нет ли на странице чего-то еще кроме формы ввода. как это сделать?
6) как заставить webbrowser переходить по первой ссылке указанной в поле ввода (поле ввода, которое в самой программе, textbox), где ссылки разделены enter'ом, а после перехода ссылку стирать?
7) как ввести в форму (ту что на сайте) значение из файла на компьютере, где программа запущена?

Отправлено: 22:14, 06-10-2012

 

Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


итак, вобщем я подумал, и решил, что
1) надо снифать запрос, который я делаю для закачки файла, а затем его пограмно посылать.
2) осуществлять поиск по странице можно закинув ее исходник в string переменную
Код: Выделить весь код
Web.Browser1.Navigate(TextBox1.Text)
str = WebBrowser1.Document.Body.InnerHtml
а затем там уже Instr() делать.
Код: Выделить весь код
If InStr(1, str, "kekeke") <> 0 Then
Если instr<>0 то, значит то что мне надо на странице есть, а мне нужен ответ только есть или нет.
3) пока не знаю что делать
4) опять же пока не знаю
5) все ошибки начинаются как правило со слова error, т.е. можно опять же закинуть исходник в переменную и там поискать
6) не знаю вот пока.
7) опять же, похоже тут придется сниффать запрос, а потом его программно посылать.

Отправлено: 17:45, 07-10-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


итак, несколько вещей, которые мне до сих пор не понятны:
1) как бороться с низкой скоростью соединения? то есть чтобы поиск не начался до полной загрузки страницы.
2) как записать в переменную первую ссылку из списка, который находится в textbox, затем ссылку удалить?

Отправлено: 18:03, 07-10-2012 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Megatron13:
1) как бороться с низкой скоростью соединения? то есть чтобы поиск не начался до полной загрузки страницы. »
WebBrowser.DocumentCompleted Event (System.Windows.Forms)
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:36, 07-10-2012 | #4


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


Ок спасибо. теперь остался мой 2ой вопрос. Впринципе мне не важно чтобы все выглядело именно вот так как я написал. По сути мне нужно загнать в обработку список урлов. Каждый урл с новой строки.
Может есть какой способ взять из multiline texbox или из файла строки и например запихать их в массив, где элементы массива - строки, или еще что-то подобное?

Тут написаны решения проблемы, но это под c# + меня не покидает ощущения, что советчики тамошние не понимают что от них просят. Есть ли эквиваленты для того о чем они говорят в vb?

Отправлено: 07:25, 08-10-2012 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


String.Split Method (System).
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:07, 08-10-2012 | #6


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


спасибо

Отправлено: 23:06, 08-10-2012 | #7


Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


еще такой вопрос по поводу запросов.
мне надо организовать авторизацию на wordpress-сайте.
вот что я начал писать
Код: Выделить весь код
Imports System.Net
Imports System.Text

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        

    End Sub

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim myHttpWebRequest As HttpWebRequest = HttpWebRequest.Create("http://megatron13.winterhost.org/wp-login.php/")
        myHttpWebRequest.Proxy = New WebProxy
        myHttpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2;"
        myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4")
        myHttpWebRequest.Headers.Add("Accept-Encoding", "gzip,deflate,sdch")
        myHttpWebRequest.Headers.Add("Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.3")
        Dim myHttpWebResponse As HttpWebResponse = myHttpWebRequest.GetResponse()
        Dim myStream = myHttpWebResponse.GetResponseStream
        Dim sCookies As String = ""
        If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Cookie")) Then
            sCookies = myHttpWebResponse.Headers("Cookie")
        End If

        myHttpWebRequest.Proxy = New WebProxy("127.0.0.1", 8888)
        myHttpWebRequest.Method = "POST"
        myHttpWebRequest.Referer = "http://megatron13.winterhost.org/wp-login.php"
        myHttpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2;"
        myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4")
        myHttpWebRequest.Headers.Add("Accept-Encoding", "gzip,deflate,sdch")
        myHttpWebRequest.Headers.Add("Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.3")
        If Not String.IsNullOrEmpty(sCookies) Then
            myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, sCookies)
        End If
        myHttpWebRequest.AllowAutoRedirect = False
        Dim sQueryString As String = "log=admin&pwd=[тут был пароль]&wp-submit=%D0%92%D0%BE%D0%B9%D1%82%D0%B8&redirect_to=http%3A%2F%2Fmegatron13.winterhost.org%2Fwp-admin%2F&testcookie=1"
        Dim ByteArr As Byte() = Encoding.GetEncoding(1251).GetBytes(sQueryString)
        myHttpWebRequest.ContentLength = ByteArr.Length()
        myHttpWebRequest.GetRequestStream().Write(ByteArr, 0, ByteArr.Length)
        myHttpWebResponse = myHttpWebRequest.GetResponse()
'и вот тут я запнулся
    End Sub
End Class
причина запинки в том, что я не совсем понимаю кое-что. вот я послал запрос. жду ответ. что писать дальше? если что, дальше меня перекидывает на wp-admin и дает новые куки.
Код: Выделить весь код
sCookies = ""
If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Cookie")) Then
  sCookies = myHttpWebResponse.Headers("Cookie")
End If
вот это?
или что?
просто все, что мне сейчас надо это авторизоваться и перейти на страницу в админке.
p.s.
вот как выглядит общение моего компа с сервером при авторизации и переходе на другую страницу после входа.
читать дальше »

заход на wp-login.php (мне это нужно для того, чтобы правильно послать следующий запрос, сейчас поймете почему, а еще мне выдают wp-settings-time-1)
Код: Выделить весь код
GET /wp-login.php HTTP/1.1
Host: megatron13.winterhost.org
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.3
Cookie: wp-settings-time-1=1349724503; wordpress_test_cookie=WP+Cookie+check
ввод данных в форму логина и отправка данных
Код: Выделить весь код
POST /wp-login.php HTTP/1.1
Host: megatron13.winterhost.org
Connection: keep-alive
Content-Length: 141
Cache-Control: max-age=0
Origin: http://megatron13.winterhost.org
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://megatron13.winterhost.org/wp-login.php
Accept-Encoding: gzip,deflate,sdch
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.3
Cookie: wp-settings-time-1=1349724503; wordpress_test_cookie=WP+Cookie+check

log=admin&pwd=[тут был пароль]&wp-submit=%D0%92%D0%BE%D0%B9%D1%82%D0%B8&redirect_to=http%3A%2F%2Fmegatron13.winterhost.org%2Fwp-admin%2F&testcookie=1
вот для чего нужен был заход на wp-login.php. в wp-submit= закодировано слово "Войти". Когда я захожу на wp-login.php я ищу (как я не написал, т.к. пока не знаю как я буду искать это значение) значение параметра value= где написано либо "Войти" либо "Login" либо еще на каком-то языке, а мне нужна универсальность, т.е. я ищу значение параметра value(опять же говорю, что не знаю пока как буду искать), затем беру значение, заталкиваю его в строковую переменную, затем System.Web.HttpUtility.UrlEncode() эту переменную, а получившееся вставляю в wp-submit)

а вот уже админка

Код: Выделить весь код
GET /wp-admin/ HTTP/1.1
Host: megatron13.winterhost.org
Connection: keep-alive
Cache-Control: max-age=0
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://megatron13.winterhost.org/wp-login.php
Accept-Encoding: gzip,deflate,sdch
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.3
Cookie: wordpress_2e51bbe11ca7be4426f471d229b9b493=admin%7C1349907584%7C12d0342c040f4132aa0fd51493606a68; wp-settings-time-1=1349724503; wordpress_test_cookie=WP+Cookie+check; wordpress_logged_in_2e51bbe11ca7be4426f471d229b9b493=admin%7C1349907584%7Cff8428be8eda60c1c2b7cf854463e566
а вот переход на страницу в админке

Код: Выделить весь код
GET /wp-admin/plugins.php HTTP/1.1
Host: megatron13.winterhost.org
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://megatron13.winterhost.org/wp-admin/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.3
Cookie: wordpress_2e51bbe11ca7be4426f471d229b9b493=admin%7C1349907584%7C12d0342c040f4132aa0fd51493606a68; wordpress_test_cookie=WP+Cookie+check; wordpress_logged_in_2e51bbe11ca7be4426f471d229b9b493=admin%7C1349907584%7Cff8428be8eda60c1c2b7cf854463e566; wp-settings-time-1=1349734785

Последний раз редактировалось Megatron13, 09-10-2012 в 03:00.


Отправлено: 02:33, 09-10-2012 | #8


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


вот пример того как реализовать авторизацию на вбhttp://ufahameleon.ru/allarti.aspx?id=88

Отправлено: 18:53, 27-10-2012 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Программа на vb.net несколько вопросов.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Несколько вопросов Swit0 Тест-форум 3 25-04-2012 10:37
.NET - Несколько вопросов по C# hxygen Программирование и базы данных 3 16-11-2010 00:59
Несколько вопросов про RAM... WiKer Материнские платы и память 7 13-04-2009 12:57
Несколько вопросов barbos Общий по Linux 8 16-12-2004 20:40
Несколько вопросов по RH 9 Frost Wolf Общий по Linux 12 07-09-2003 12:51




 
Переход