Вывод погоды в Label

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
6a6auKa
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 15.11.2007 (Чт) 23:18

Вывод погоды в Label

Сообщение 6a6auKa » 17.11.2007 (Сб) 11:38

Я хочу приделать к своей программе прогноз погоды и курс валют
из Рамблера, Как это можно сделать??

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 17.11.2007 (Сб) 12:14

Вставить в форму Client-окно IE и поместить в него требуемый HTML код. Это не Label.

Если в Label, то нужно найти службу, которая бы выдавала подобного рода данные (и только данные), делать к ней запросы и отображать в Label-е. Можно конечно граббить эту информацию с рамблера, но это будет нарушением соглашения.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

6a6auKa
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 15.11.2007 (Чт) 23:18

Сообщение 6a6auKa » 17.11.2007 (Сб) 12:32

Не, я канечно оставлю типа "всё взято с рамблера", и прогой пользуюсь я
один )) просто для удобства.. Спасибо большое за информацию!

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 17.11.2007 (Сб) 16:05

Скачай Рамблер-Клиент.Там всё есть! :lol:
«Не важно, откуда ты. Важно - где ты.»

6a6auKa
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 15.11.2007 (Чт) 23:18

Сообщение 6a6auKa » 18.11.2007 (Вс) 21:44

А всё-таки, как можно вывести значения с Web-Страницы в Label?

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 18.11.2007 (Вс) 23:02

Найти это значение в коде веб-страницы и присвоить его свойству Caption лейбла.
Подпись проходит рефакторинг

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2054
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 19.11.2007 (Пн) 0:05

http://bbs.vbstreets.ru/viewtopic.php?t=35006

Вот тут тока что отпостил ))

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 22.11.2007 (Чт) 12:19

ALX_2002 писал :

Вот что получилось Вдруг кому нить пригодится.

С автоматическим определением кодировки

Пример дёргает погоду с www.rambler.ru

Visual Basic:


Dim UrlDownloader

Set UrlDownloader = New UrlDownloaderClass

if UrlDownloader.UrlToDocument("http://www.rambler.ru",Document) Then
Set Tables = Document.all.tags("TABLE")

For TableIndex=1 to Tables.Length-1
if Instr(LCase(Tables(TableIndex).innertext),"погода:") Then
if LCase(Tables(TableIndex).ClassName)="gradgrey2" Then
TextBuffer = TextBuffer & Tables(TableIndex).innertext & vbCrlf
For Each TR in Tables(TableIndex+2).Rows
For Each TD in TR.Cells
if TD.innerText <> "" Then
TextBuffer = TextBuffer & " " & TD.innertext
End if
Next
TextBuffer = TextBuffer & vbCrlf
Next
End if
End if
Next

MsgBox TextBuffer
Else
MsgBox URL,vbExclamation,Err.Description
End if

Class UrlDownloaderClass
Private XmlHttp
Private Stream

Private cache

Public Status

Private Sub Class_Initialize
Set XmlHttp = CreateObject("Microsoft.XMLHTTP")
Set Stream = CreateObject("ADODB.Stream")
End Sub

Function UrlToDocument(URL,HTMLDocument)
On Error Resume Next

XmlHttp.abort

XmlHttp.Open "GET",Url,False

If Not cache then
XmlHttp.setRequestHeader "Cache-Control", "no-cache"
End if

XmlHttp.Send

Status = XmlHttp.Status

Set HTMLDocument = CreateObject("HTMLFile")

HTMLDocument.Open

HTMLDocument.write "<HTML><BODY></BODY></HTML>"

Charset = HTMLDocument.defaultcharset

If XmlHttp.Status = 200 Then

Groups = Split(XmlHttp.GetResponseHeader("Content-type"))

For Each Group in Groups
Params = Split(Group,"=")
if LCase(Params(0))="charset" then Charset = Params(1)
Next

Stream.Charset = Charset
Stream.Type = 1
Stream.Open
Stream.Write XmlHttp.ResponseBody
Stream.Position = 0
Stream.Type = 2
HTMLDocument.body.innerhtml = Stream.ReadText
Stream.Close
End if

HTMLDocument.Close

UrlToDocument = Not Cbool(Err.Number)
End Function
End Class


«Не важно, откуда ты. Важно - где ты.»

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 22.11.2007 (Чт) 12:25

DKbelRoma, и какой в ентом посте смысел?
З.Ы. По моему скромному разумению DKbelRoma вполне достоен внеочередных награждений за систематический флуд.
Весь мир матрица, а мы в нем потоки байтов!

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 22.11.2007 (Чт) 12:31

Извените (если я успел провениться) Я просто хотел помочь! :?
«Не важно, откуда ты. Важно - где ты.»

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 22.11.2007 (Чт) 13:05

А в чем заключалась твоя помощь? В том, что ты отцитировал вопрос автора?
Lasciate ogni speranza, voi ch'entrate.

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2054
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 22.11.2007 (Чт) 18:27

ППЦ !!! Меня цитирвали ))) Я ПОЛЕЕЕЗНЫЙ ))) :lol: :lol: :lol:

2 DKbelRoma: Не перживай, Viper мне ща тож накатит за флуд )))


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 83

    TopList