Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скачать Excel файл с сайта на Java / 7 сообщений из 7, страница 1 из 1
03.08.2017, 20:05
    #39499920
Exzem
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
Добрый день!

Нужно скачать с сайта файл Excel для дальнейшей его обработки.
На самом деле планируется создать цикл где то в час, но речь не об этом.
Я выцепил код элемента для скачивания :

Код: vbnet
1.
<a class="ActiveLink" title="Excel" alt="Excel" onclick="$find('ctl32').exportReport('EXCELOPENXML');" href="javascript:void(0)" style="padding: 3px 8px 3px 32px; display: block; white-space: nowrap; text-decoration: none;">Excel</a>



(элемент находится в выпадающем списке)
Нашёл вариант для запуска скрипта через VBA

Код: 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.
39.
40.
41.
Public Sub x()
 Application.ScreenUpdating = False
 Application.Calculation = xlCalculationManual
 'Set variables
 Dim ar
 Dim oIE As Object,
sHTML As String
 Dim tmp,
i As Long
 Set oIE= CreateObject("InternetExplorer.Application") 'start IE
 oIE.Visible = 1 'IE window visible - 0-hide 1-show
 Worksheets("Лист2").Cells.ClearContents 'очищаем лист
 s = "file:\\D:\IAM.htm" ' тут ваша ссылка на интранет
 oIE.Navigate (s) 'грузим
 Do While oIE.busy Or (oIE.ReadyState<> 4): DoEvents: Loop 'ждем пока прогрузится
 Set maPageHtml= oIE.Document 'считываем структуру документа
 Set SelectList= maPageHtml.getElementsbyclassname("Tab2Lnk") 'выбираем нужные ссылки по которым надо щелкать (с нужным скриптом)
 SelectList(0).Click 'щелкаем (теоретически должен запуститься скрипт); индекс 0 - делегирования, 1-атрибуты и т.д
 i = 0 : Do While i< 100000 :
i = i + 1 : DoEvents : Loop : Next i 'пауза для обновления страницы
 Set maPageHtml= oIE.Document 'считываем обновленный документ
 Set Htable= maPageHtml.getElementsbyTagname("tbody") 'выбираем все таблицы
 For i= 0 To Htable.Length- 1 'циклом выбираем первую таблицу в которой кол-во строк больше 3
 If Htable(i).Rows.Length> 3 Then Exit For
 Next i
 last = Worksheets("Лист2").Range("A65536").End(xlUp).Row 'последняя строка на листе
 Set maTable= Htable(i) ' выбираем найденную в цикле таблицу
 For i= 1 To maTable.Rows.Length ' цикл по строкам
 For j= 1 To maTable.Rows(i- 1).Cells.Length ' цикл по столбцам
 Worksheets("Лист2").Cells(s,j) = maTable.Rows(i - 1).Cells(j - 1).innertext 'значение ячейки
 Next j
 Next i
 Worksheets("Лист2").Select
 Set maPageHtml= Nothing 'clear variables
 oIE.Quit 'exit from IE
 'the end
 Set oIE= Nothing
 Application.ScreenUpdating = True
 Application.Calculation = xlCalculationAutomatic
 MsgBox "Finish"
 End Sub



прошу вас помочь оптимизировать данный код под мой скрипт, заранее спасибо!
очень прошу помочь!

P.S. на сайт без авторизации не попасть (+ он завязан на предприятие), по этому не кидаю сюда ссылку
P.S.S. Сторонние программы типо "Fiddler" установить не выйдет - нет прав.
...
Рейтинг: 0 / 0
03.08.2017, 21:54
    #39499956
Exzem
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
На самом деле - даже эмуляция клика мышки по ссылке очень поможет ( запустит скачку файла)
...
Рейтинг: 0 / 0
03.08.2017, 23:08
    #39500009
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
ExzemНа самом деле - даже эмуляция клика мышки по ссылке очень поможет ( запустит скачку файла)

Все, что идет после строчки с кликом Вам не нужно. Поменяйте имя класса и ссылку на сайт на Ваши, и в принципе, тестовая готова.
...
Рейтинг: 0 / 0
04.08.2017, 09:29
    #39500092
Exzem
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
Заменил класс на "ActiveLink" сайт открывается, но макрос выдает ошибку : "property or method" (
...
Рейтинг: 0 / 0
04.08.2017, 09:46
    #39500106
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
ExzemЗаменил класс на "ActiveLink" сайт открывается, но макрос выдает ошибку : "property or method" (

Покажите какой код на текущий момент. На какой строчке валится код?
...
Рейтинг: 0 / 0
04.08.2017, 13:20
    #39500270
Exzem
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
Нашел обходной путь, подстроится под генерируемую ссылку на файл, качаю на прямиком, всем спасибо!!
...
Рейтинг: 0 / 0
07.08.2017, 03:21
    #39501043
Bobax012
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скачать Excel файл с сайта на Java
ExzemНашел обходной путь, подстроится под генерируемую ссылку на файл, качаю на прямиком, всем спасибо!!

Может быть поделитесь кодом, кому-то пригодится.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скачать Excel файл с сайта на Java / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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