Имя: Пароль:
1C
1С v8
Парсинг сайтов 1С
0 DeMi4
 
11.05.12
12:22
Надо загружать статистику с сайтов. Есть логин и пароль
При ручном проходе до самой статистики надо 3 раза переходить по ссылка
Первая авторизация потом выбор статистики потом передача периода и
Через полеHTMLдокумента все в принципе работает. Но надо сделать загрузку автоматически без участия пользователя. Посоветуйте как быть.
Как выполнить сразу переход к нужной странице
Сохранять ее временно на комп или парсить сразу
Что поюзать из стандартного в 8.2
1 Мизантроп
 
11.05.12
12:26
Не проще с сайтов по почте слать статистику текстовыми файлами  или по фтп, а потом разбирать ее локально? И никакой хтмл не помешает, чистый текст.
2 DeMi4
 
11.05.12
12:29
Если бы это было возможно. Данные только в личном кабинете
3 Адинэснег
 
11.05.12
12:29
опять мисту копипастить?)
4 Мизантроп
 
11.05.12
12:31
хостинг без shell это плохо
5 DeMi4
 
11.05.12
22:40
Ни у кого не было такой задачи по сбору статистики с сайтов телефонных операторов из личного кабинета.
6 DeMi4
 
11.05.12
22:42
Пробовал через HTTPСоединение но возникает проблема с сертефикатом
7 Lamer1C
 
11.05.12
23:04
(0) не проще напрямую из базы данных их получать?
8 Юрий Лазаренко
 
11.05.12
23:10
(7) Какой телефонный оператор (читай (5)) в здравом уме подпустит юзера к базе данных?
9 Lamer1C
 
11.05.12
23:17
(8) при чем здесь телефонный оператор? ты вообще о чем?
"в здравом уме подпустит юзера к базе данных?" - т.е. по ссылкам подпустит, а напрямую нет?
10 smaharbA
 
11.05.12
23:18
зачем ? (с)
11 rcs
 
12.05.12
07:34
(0) Надо использовать свойство Документ у полеHTMLдокумента. Это свойство предоставляет доступ к страничке как к COM-объекту. Если например нужно авторизоваться, надо найти в этом COM-объекте поля для ввода логина и пароля, программно заполнить их. Далее найти кнопку, которая посылает данные авторизации и программно нажать её.
12 Юрий Лазаренко
 
12.05.12
09:53
(9) В (5) ТС пишет о необходимости сбора и анализа статистики с сайта телефонного оператора. Трудно представить, как например Билайн даст доступ к своей БД на сайте программисту клиента. А к ссылкам - пожалуйста, заходи в личный кабинет и смотри.
13 manyak
 
12.05.12
10:17
(11) +1, тож недавно писал выдергивалку данных с сайта, ток юзал компонент стандартный IE - Web Brouser.
вот:

'переходим на страницу:
wb.navigate "http://xxx.ru/base.php"
получаем станицу:
Set DOCUMENT = wb.DOCUMENT
'ждем загрузки страницы
Do Until wb.readyState = 4
 doevents
loop
'заполняем логин
Set login_field = wb.DOCUMENT.getElementById("login")
login_field="my_login_name"
'заполняем пароль
Set pwf_field = wb.DOCUMENT.getElementById("pwd")
pwd_field="my_pwd"
'нажимаем кнопку входа
Set button_login = wb.DOCUMENT.getElementById("button_login")
button_login.click
'пауза на вход - ждем когда войдем
Delay (5)
'шарим по таблице с данными нужными
'получаем таблицу с данными
Set TABLE = DOCUMENT.getElementById("detail_table")
'два цикла по строкам и потом по ячекам(столбцам)
For Each TR In TABLE.rows
 For Each TD In TR.cells
    'данные в ячеке берем из TD.innerText, в моем случае пишу в excell    
    my_report.worksheets(list_name1).cells(my_row, 3) = TD.innerText
 next
next

почему остановился на wb а не на полеhtml - так как в поле придется извращаться - button_login.click не сработает.
getElementById("button_login") - "button_login" это смотришь сам глазками в html коде страничке на сайте  - как имя присвоил вебмастер нужному тебе элементу старницы
14 manyak
 
12.05.12
10:24
чтобы добавить его на форму в конфигураторе:
меню форма - вставить ActiveX - выбрать Microsoft Web Brouser
15 Lamer1C
 
12.05.12
18:38
(12) на чтение - почему бы и нет. раз по ссылкам дает. тож чтение происходит
16 Юрий Лазаренко
 
12.05.12
19:44
(15) Будь я оператором - не дал бы. Мало ли что там юзер из базы прочитает, кроме своих данных.
17 hhhh
 
12.05.12
20:13
так он уже дал доступ. В личном кабинете
18 Юрий Лазаренко
 
12.05.12
20:21
(17) К разделу на сайте,а не к базе на сервере
19 hhhh
 
12.05.12
20:46
(18) а в раздел данные с неба попадают?
20 manyak
 
12.05.12
21:06
в раздел данные падают из базы данных к которой доступа нет, а есть доступ только к отчету - который сформирован на основе запроса к базе данных. сам он запрос не может сделать - вот и парсит ...
21 hhhh
 
12.05.12
21:10
(20) ну есть и отчет по статистике, который ему доступен. Зачем парсить сайт.
22 manyak
 
12.05.12
23:07
челу нужно загружать данные в 1с по статистике, поэтому он будет парсить сайтовую страничку с отчетом. читай внимательнее "Но надо сделать загрузку автоматически без участия пользователя"
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.