Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / переход по ссылкам3 / 2 сообщений из 2, страница 1 из 1
06.08.2013, 14:12
    #38356614
PlanB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переход по ссылкам3
добрый день!

есть задача выгрузить с сайта некоторую информацию. делать это предполагается web-запросом из excel. для этого мне надо научить браузер переходить по ссылкам на странице. логично предположить, что это осуществимо путем прочтения ее html-кода.

начал делать, код внизу. всего 44 страницы, поэтому такой счетчик вначале. на каждой странице около 40 гиперссылок соответствуют условиям поиска (ищем строку /banks/memory/bank/?id=). Как мне пройтись циклом по всем найденным на странице гиперссылкам с таким условиям.

PS звиняйте, вопрос достаточно тривиальный. давно не писал кода, мозги скрипят

спасибо за помощь!

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
Sub aaa111()
Dim i As Integer, s1, s As String
Dim s As String, o As Object, nPos As Long, nPos1 As Long

Set WebBrowser1 = New SHDocVw.InternetExplorer
    WebBrowser1.Visible = True

For i = 1 To 44

        s1 = "http://www.banki.ru/banks/memory/?PAGEN_1=" & i & "&by=PROPERTY_date&order=desc"
        ''''http://www.banki.ru/banks/memory/?PAGEN_1=1&by=PROPERTY_date&order=desc
        '------------------------------------------------------------------------------------
        Call WebBrowser1.Navigate(s1)
        'Процедурка ждёт загрузки страницы
        Do Until WebBrowser1.ReadyState = READYSTATE_COMPLETE
            Application.Wait (1)
        Loop
        '------------------------------------------------------------------------------------
        'Читаем страницу в HTML, находим адрес ссылки
        s = WebBrowser1.Document.ChildNodes.Item(1).innerHTML
            nPos = InStr(1, s, "/banks/memory/bank/?id=", vbTextCompare)
            If nPos <> 0 Then
                nPos1 = InStr(nPos, s, """>", vbTextCompare)
                If nPos1 <> 0 Then
                    'Переходим по ссылке
                    'http://www.banki.ru/banks/memory/bank/?id=5201871
                    WebBrowser1.Navigate ("www.banki.ru" & Mid(s, nPos, nPos1 - (nPos - 1)))
                        Do Until WebBrowser1.ReadyState = READYSTATE_COMPLETE
                            Application.Wait (1)
                        Loop
                    'Возвращаем адрес в переменную
                    URLadr3 = WebBrowser1.LocationURL
                    Cells(i, 3) = URLadr3
                End If
            End If
Next i
        Set WebBrowser1 = Nothing
End Sub
...
Рейтинг: 0 / 0
06.08.2013, 17:27
    #38357158
PlanB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переход по ссылкам3
вопрос снят, тему можно удалить
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / переход по ссылкам3 / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]