| 
    
        
     
     | 
    
    
  | 
скачивание страницы по ссылке | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        lamme    
     16.12.19 
            ✎
    15:38 
 | 
         
        1С8 не уф.
 
        есть страница. пытаюсь ее скачать ИсхСтрока ="?unt1=SDFL&Unt2=refaln" httpss = новый HTTPСоединение("mysite.ru",,,,,,Новый ЗащищенноесоединениеOpenSSL(),); имятмп = ПолучитьИмяВременногоФайл(xml); httpss.Получить( ИсхСтрока,имятмп); страница скачивается. но вместо необходимых данных = в блоке на сайте идет некая функция - которая обращается к своей базе SQL и на экране только показывает результат. соответтсвенно - когда я скачиваю таким образом страницы - вижу эту функцуию. а когда смотрю на экране эту страницу - вижу все как надо. со всеми данными. ---- как такое можно обойти и получить именно страницу с данными ? (само собой - что запустить функцию не могу) ------ код на сайте такой jQuery(document).ready(function($){ var dadu_disable=0; //--// var scroll_top_button = document.getElementById('scrollTopButton'); if (scroll_top_button !== null) { scroll_top_button.addEventListener('click', function (event) { var scroll_top = window.pageYOffset || document.documentElement.scrollTop; if (scroll_top > 500) { window.scrollTo(0, 500); } setTimeout(function () { window.scrollTo({ top: 0, behavior: 'smooth' }); }, 20); event.preventDefault(); }); document.addEventListener('scroll', function () { var scroll_top = window.pageYOffset || document.documentElement.scrollTop; if (scroll_top > 320) { scroll_top_button.style.display = 'block'; } else { scroll_top_button.style.display = 'none'; } }); } $.fancybox.defaults.modal = true; $('[data-fancybox]').fancybox({ padding: 0, scrolling: 'auto', modal: true, beforeShow: function (instance, slide) { }, beforeClose: function() { if(fancyboxLock){ return false;  | 
|||
| 
    1
    
        lamme    
     16.12.19 
            ✎
    15:39 
 | 
         
        может ее в браузере прогрузить на клиенте
 
        а потом уже результат ортображать ...  | 
|||
| 
    2
    
        ДенисЧ    
     16.12.19 
            ✎
    15:39 
 | 
         
        В этом скрипте ничего нет про скачивание данных с сервера.     
         | 
|||
| 
    3
    
        lamme    
     16.12.19 
            ✎
    15:46 
 | 
         
        но именно этот блок идет в том месте - где должны быть данные     
         | 
|||
| 
    4
    
        lamme    
     16.12.19 
            ✎
    15:53 
 | 
         
        прогрузил эту страницу по ссылке как указано тут
 
        https://1clenta.ru/pattern/135 получил - совсем не то что ожидаю. т.е. такое ощущение - что как то ловят момент отображения страницы ... или с браузера или не с браузера или если не браузер - то приходит то что я и имею  | 
|||
| 
    5
    
        lamme    
     16.12.19 
            ✎
    16:07 
 | 
         
        о ..
 
        если эту страницу ввести в ИЕ - то выходит то что 1С ловит а если эту же страницу ввести в опере = то все четко  | 
|||
| 
    6
    
        lamme    
     16.12.19 
            ✎
    16:08 
 | 
         
        куда дальше капать ?     
         | 
|||
| 
    7
    
        ДенисЧ    
     16.12.19 
            ✎
    16:09 
 | 
         
        Юзер-агента попробовать подменить?     
         | 
|||
| 
    8
    
        lamme    
     16.12.19 
            ✎
    16:13 
 | 
         
        а как ?     
         | 
|||
| 
    9
    
        lamme    
     16.12.19 
            ✎
    16:17 
 | 
         
        о ... на моем свежем ие11 - все работает ...
 
        все .. дальше клиент пусть сам разбирается все написано - куда капать = пусть думает  | 
|||
| 
    10
    
        crasler    
     16.12.19 
            ✎
    16:18 
 | 
         
        &НаКлиенте
 
        Процедура УстановкаЗаголовковВHTTPЗапросеИз1С(Команда) Соединение = Новый HTTPСоединение("yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL()); Заголовки = Новый Соответствие; Заголовки.Вставить("User-Agent", "Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"); Заголовки.Вставить("Cookie", "id=1"); Ответ = Соединение.Получить(Новый HTTPЗапрос("", Заголовки)); КонецПроцедуры  | 
|||
| 
    11
    
        lamme    
     17.12.19 
            ✎
    14:57 
 | 
         
        тупой вопрос ..
 
        User-Agent - тот что Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1 - это только дляMozilla пишется ? а если у юзера нет Mozilla ? есть опера или хром ...  | 
|||
| 
    12
    
        crasler    
     17.12.19 
            ✎
    15:05 
 | 
         
        (11) Так ты же изображаешь юзера, главное чтоб сервер съел и не подавился!     
         | 
|||
| 
    13
    
        sitex    
     naïve 
    17.12.19 
            ✎
    15:05 
 | 
         
        (11) Почитай тут, на досуге. https://ru.wikipedia.org/wiki/User_agent     
         | 
|||
| 
    14
    
        lamme    
     17.12.19 
            ✎
    16:16 
 | 
         
        хрень продолжается ...
 
        поставил ИЕ 11 в 1С ессли сделать браузер - ЭлементыФормы.ПолеHTMLДокумента1.Перейти("https://www.1c.ru"); то все отображается если в коде - httpss.Получить( ИсхСтрока,имятмп); то все тоже .. печально и нет данных куда думать дальше ?  | 
|||
| 
    15
    
        crasler    
     17.12.19 
            ✎
    16:19 
 | 
         
        (14) Попробуй адрес https://1c.ru/ скорее всего идет редирект!     
         | 
|||
| 
    16
    
        lamme    
     17.12.19 
            ✎
    16:20 
 | 
         
        есть правда но ..
 
        в этом браузере - сначала идет строка - страница открылаь. потом на месте данных идет "Идет загрузка" 1,5-2 сек , мелькает знак капчи. и потом идет отображение данных. ------ httpss.Получить( ИсхСтрока,имятмп); - скачивает мгновенно  | 
|||
| 
    17
    
        Йохохо    
     17.12.19 
            ✎
    16:24 
 | 
||||
| 
    18
    
        pechkin    
     17.12.19 
            ✎
    16:32 
 | 
         
        так может там аякс какой?     
         | 
|||
| 
    19
    
        pechkin    
     17.12.19 
            ✎
    16:33 
 | 
         
        давай уже реальные адреса, посмотрим     
         | 
|||
| 
    20
    
        lamme    
     17.12.19 
            ✎
    16:38 
 | 
         
        не хочется тут ..
 
        если не сложно - в личику напишите  | 
|||
| 
    21
    
        pechkin    
     17.12.19 
            ✎
    16:39 
 | 
         
        там пароли какие то передаются?     
         | 
|||
| 
    22
    
        lamme    
     17.12.19 
            ✎
    16:45 
 | 
         
        там сайт для меня слишком популярный     
         | 
|||
| 
    23
    
        sitex    
     naïve 
    17.12.19 
            ✎
    16:48 
 | 
         
        (16) Если есть редирект тогда используй WinHttpRequest, есть опция Option(6) //blnEnableRedirects     
         | 
|||
| 
    24
    
        sitex    
     naïve 
    17.12.19 
            ✎
    16:48 
 | 
         
        (23) +это как вариант     
         | 
|||
| 
    25
    
        lamme    
     17.12.19 
            ✎
    16:53 
 | 
         
        там нет редиректа.
 
        данные на странице формируются динамически в зависимости от того что ввел в поля выбора пользователь. по итоге - это страница сайта с определенными параметрами запроса. вот эту страницу - уже итоговую - пытаюсь поймать т.е. в 1С пользователь ввел те же параметры что и на сайте. по каким то правилам сформировалась ссылка. и по этой ссылке скаичаю страницу. разбираю ее.  | 
|||
| 
    26
    
        ДенисЧ    
     17.12.19 
            ✎
    16:55 
 | 
         
        (25) Наверняка там ажакс, который формирует запрос к ресту (или, не приведи Моргот, к графкуэлю). Вот этот запрос тебе надо и ловить.     
         | 
|||
| 
    27
    
        lamme    
     17.12.19 
            ✎
    16:55 
 | 
         
        как ?     
         | 
|||
| 
    28
    
        ДенисЧ    
     17.12.19 
            ✎
    16:56 
 | 
         
        (27) фиддлером каким-нибудь. Или админом того сайта.     
         | 
|||
| 
    29
    
        lamme    
     17.12.19 
            ✎
    16:57 
 | 
         
        ( 26)
 
        я примерно так в (0) и написал только может своими словами  | 
|||
| 
    30
    
        lamme    
     17.12.19 
            ✎
    16:58 
 | 
         
        а есть инструкция для профанов в этом вопросе ? 
 
        )  | 
|||
| 
    31
    
        ДенисЧ    
     17.12.19 
            ✎
    16:59 
 | 
         
        (30) Наверняка есть. Гугли фиддлер, лови активность сайта по мере ввода данных на него...
 
        Или лови не активность, а админа сайта, требуй у него апи.  | 
|||
| 
    32
    
        lamme    
     17.12.19 
            ✎
    17:00 
 | 
         
        админ сайта не доступен ) вернее - он не длжен знать что такое делается .. )
 
        парсинг идет  | 
|||
| 
    33
    
        lamme    
     19.12.19 
            ✎
    15:59 
 | 
         
        делаю через ж.пу
 
        делаю реквизит формы - ПолеHTMLДокумента1 - и это поел загружает данные ЭлементыФормы.ПолеHTMLДокумента1.Перейти(ссылка на мою страницу) ждем 10 сек и потом ТекстовыйДокумент = Новый ТекстовыйДокумент; ТекстовыйДокумент.УстановитьТекст(ЭлементыФормы.ПолеHTMLДокумента1.Документ.body.outerHTML); ТекстовыйДокумент.НачатьЗапись(,имяфайлаккужазаписывать) все .. в итоге тоже самое  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |