Страница: 1 |
Страница: 1 |
Вопрос: ЗАкачка информации с сайта
Добавлено: 01.08.09 09:00
Автор вопроса: zayac | Web-сайт:
вот сайт
http://virtualsoccer.ru/roster.php?num=9331
я хочу закачать с него таблицу с футболистами
стандартный веб-запрос, почему то её пропускает
может можно как то в VBA?
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
AlexHack
Вопросов: 3
Ответов: 3
Web-сайт:
Профиль | | #1
Добавлено: 01.08.09 09:47
В VB есть такой компонент как WebBrowser. Ставь его и будет тебе таблица в твоей проге. А насчёт того чтобы послать запрос и получить данные врят ли такое получится. Видишь тут идёт речь уже клиент серверной частей, т.е. на определённую команду от тебя сервер должен отдать тебе данную таблицу. Методов отдачи множество, приведу пример нескольких может и не самых рациональных. На запрос скрипт php отдаёт тебе файлик в rtf к примеру ты его скачиваешь посредством компонента Inet. И потом выводишь таблицу в RichTextBox. Можно данные передавать также в ответном запросе от php скрипта. Удачи!
Номер ответа: 2
Автор ответа:
zayac
ICQ: 223529798
Вопросов: 1
Ответов: 5
Web-сайт:
Профиль | | #2
Добавлено: 01.08.09 11:24
дык в том то и дело что никакого файлика нет (
таблица - это просто ответ сервера, но он как то динамически его держит в переменных на скрипте
могу я как то получить доступ к этим переменным?
очень хотелось бы не только считывать но и заполнять поля на сайте даными из экселя, что посоветуете?
Номер ответа: 3
Автор ответа:
zayac
ICQ: 223529798
Вопросов: 1
Ответов: 5
Web-сайт:
Профиль | | #3
Добавлено: 01.08.09 11:29
WebBrowser
имеется в виду - dhtml edit control for IE 5.0?
есь ли какой нибудь наглядный пример?
Номер ответа: 4
Автор ответа:
AngryBadger
Вопросов: 33
Ответов: 245
Профиль | | #4
Добавлено: 03.08.09 09:57
В переменную htmlcode получишь текст, дальше работай с ним.
Dim oHttp As Object
Dim htmlcode As String
sURI = "http://virtualsoccer.ru/roster.php?num=9331"
On Error Resume Next
Set oHttp = CreateObject("MSXML2.XMLHTTP"
If Err.Number <> 0 Then
Set oHttp = CreateObject("MSXML.XMLHTTPRequest"
End If
On Error GoTo 0
If oHttp Is Nothing Then
Exit Sub
End If
oHttp.Open "GET", sURI, False
oHttp.send
htmlcode = oHttp.responseText
Debug.Print htmlcode
Номер ответа: 5
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #5
Добавлено: 03.08.09 10:03
Для кода используй тег [sоurce][/sоurce].Там лучше будет и без тупых смайликов.
Номер ответа: 6
Автор ответа:
zayac
ICQ: 223529798
Вопросов: 1
Ответов: 5
Web-сайт:
Профиль | | #6
Добавлено: 01.04.10 02:51
прекрасный код!!!
а можно как то записывать в поля на формах сайта свои данные?
дело в том что htmlcode содержит текст этой самой страницы.
его так иногда не хватает (особенно когда динамически формируется страница, что бы посмотреть что же она содержит)
- по этой штуке получишь код, и можно разобрать что же там такое твориться, но записать в какую либо форму можно только по ID элемента, или по имени, если он есть (а если компонент на основе класса?)
- возможно ли как то обратиться к переменным документа из vb?, дело в том что на многих сайтах нужная информация уже содержиться в переменных JScript. Также очень много функций уже реализованных на скриптах. Может есть вариант как то управлять страницей и содержимым из VB?
скажем открываем страницу (уже есть)
вводим логин\пароль (уже сделал)
переходим по сайту (аналогично в примере)
вот такой вот скрипт накалякал для оперы (проверил, работает как надо, скрипт выполняет заполнение формы на сайте, цифирки в массиве- plr_id_my -это то что я пишу на сайт, function()- это просто для написания букмарклета)
а я хочу сделать под IE в виде тулбара
[sоurce]javascriptfunction(){var x,plr_id_my=[216038,521699,385453,216090,268834,222773,572910,225545,521616,216053,413231,424278,312741,471980,502728,378381];x=document.forma;for(var ind=0; ind<16; ind++){x.elements['plr['+ind+']'].value=plr_id_my[ind];GetPLi(ind);};x.elements['price'].value=25;x.elements['formation'].value='1-3-6-1';GetPOS();x.elements['defence'].value='зональный';x.elements['tactics'].value='нормальная';x.elements['gamestyle'].value='нормальная';x.elements['captain'].value=216042;x.elements['captains'].value=216053;x.elements['uglov'].value=216053;x.elements['penalty'].value=216053;x.elements['pos[4]'].value='LW';GetPOS(4);x.elements['pos[9]'].value='RW';GetPOS(9);x.elements['pos[6]'].value='DM';GetPOS(6);})();[/sоurce]
конечно можно изначально писать на Java, но я его не знаю и он стоит денег, а ВБА уже вместе с офисом.
Номер ответа: 7
Автор ответа:
zayac
ICQ: 223529798
Вопросов: 1
Ответов: 5
Web-сайт:
Профиль | | #7
Добавлено: 01.04.10 03:28
пробовал приведённый код в excel
выдаёт сообщение - отказано в доступе код -2147024891 (80070005)
хотя если вводить вместо моего адреса (указанного в примере) адрес www.ya.ru работает прекрасно
Номер ответа: 8
Автор ответа:
VbStarter
ICQ: 357911808
Вопросов: 118
Ответов: 1340
Web-сайт:
Профиль | | #8
Добавлено: 22.04.10 17:29
значит таблицу держит.
Номер ответа: 9
Автор ответа:
zayac
ICQ: 223529798
Вопросов: 1
Ответов: 5
Web-сайт:
Профиль | | #9
Добавлено: 28.05.10 07:16
а где можно взять больше информации о MSXML2.XMLHTTP
что то на мсдн чего то мне на олбанском пишут...