|
Парсинг динамического сайта | ☑ | ||
---|---|---|---|---|
0
Shamandafil
07.07.20
✎
10:35
|
Возникла задача получения информации с сайта налоговой ( https://login.e-taxes.gov.az/login/ ), которую штатными средствами не получить. Разработчики не отвечают. Для этого нужно пройти авторизацию и получить содержимое страницы сгенерированой скриптами. Через ПолеHTMLДокумента на базе IE, сайт не позволяет пройти даже авторизацию, на новых версиях платформы (>8.3.14) сайт глючит и не позволяет получать данные в 1С. Но из браузера инструментами разработчика можно извлечь html-текст документов и регулярными выражениями получить из них данные для 1С. Может ли кто посоветовать нормальное решение? Поскольку используемое сейчас с расширением браузера очень не надёжно и не тянет больше чем на бета-версию.
|
|||
1
asady
07.07.20
✎
10:43
|
(0) тупо пройти авторизацию отправив POST запрос на сервер получается?
|
|||
2
Shamandafil
07.07.20
✎
10:49
|
Нет. Сайт на каком-то джава движке и служебная часть страниц выглядит, как будто обфусцированная. Полноценный вход (на чтение сайта не нужен) требует подтверждения через СМС-подобную функцию сим-карты телефона.
|
|||
3
asady
07.07.20
✎
10:57
|
(2) ну не хотят разработчики чтобы вы парсили их документы.
остается одно - хакнуть их. да? |
|||
4
Shamandafil
07.07.20
✎
11:30
|
Не данные криворуких разработчиков, а свои накладные, напомню, что домен gov.az, т.е. дело государственное.
|
|||
5
Волшебник
модератор
07.07.20
✎
11:39
|
(2) >> служебная часть страниц выглядит, как будто обфусцированная.
может просто сжатая |
|||
6
Hillsnake
07.07.20
✎
11:40
|
(0) selenium пробовали ?
|
|||
7
Shamandafil
07.07.20
✎
12:06
|
(6) Нет, а сможет ли он работать в терминальном режиме?
Но как я и сказал, я написал расширение и .NET минивебсервер, получающий от расширения http-запросы, которые передаются в 1С. Спасибо Serginio1 за v8: v8: Использование сборок .NET в 1С 7.x и 8.x . Для одиноко работающей 1С это как-то работает, но при одновременном запуске, особенно в терминале :( |
|||
8
Garykom
гуру
07.07.20
✎
14:03
|
(0) если содержимое страницы скриптами то значит 100% есть некий API который можно после авторизации дергать
|
|||
9
Garykom
гуру
07.07.20
✎
14:04
|
(8)+ простой браузер через fiddler и отследить все запросы, какой API
|
|||
10
Shamandafil
07.07.20
✎
14:30
|
(9) Сложный API, даже если есть, а не просто текст страницы обновляется. Фидлер для этого не использовал, но сетевые запросы отладчиком браузера мониторил, они непрозрачные. Но спасибо за направление.
|
|||
11
Garykom
гуру
07.07.20
✎
14:45
|
(10) любой классический апи выдает голый json который уже js обрабатывается и превращается в html
|
|||
12
Shamandafil
07.07.20
✎
14:49
|
(11) Ну это, если он есть, и руки не из жопы. Следов json'а не обнаружил.
|
|||
13
Segate
07.07.20
✎
14:50
|
(12) xslt?
|
|||
14
Shamandafil
08.07.20
✎
14:48
|
(13) следов и этого не обнаружено
|
|||
15
Shamandafil
14.07.20
✎
10:10
|
(6) А есть примеры по работе с ним из 1С?
|
|||
16
Сияющий в темноте
15.07.20
✎
01:06
|
В браузере каком это работает?
к бракзеру можно расширение написать. |
|||
17
Поросян
15.07.20
✎
01:45
|
это же кража!
но а вообще нужно через библиотеку js парсить такой сайт. и скормить ему сначала данные. |
|||
18
acht
15.07.20
✎
07:22
|
(17) > это же кража!
Это же Паша! |
|||
19
Shamandafil
16.07.20
✎
10:04
|
(16) В хроме, в (7) упоминается такое расширение, но оно только захватывает текущий текст страницы и передаёт его в процесс 1С.
|
|||
20
Hillsnake
16.07.20
✎
10:19
|
(15) есть. (7) сможет.
|
|||
21
Shamandafil
16.07.20
✎
12:00
|
(20) А вы будете столь любезны поделиться ссылками на эти примеры?
|
|||
22
Serginio1
16.07.20
✎
12:30
|
(0) Можно попробовать AngleSharp там есть поддержка JavaScript
http://catalog.mista.ru/public/466196/ https://github.com/AngleSharp/AngleSharp Automated JavaScript interaction |
|||
23
Serginio1
16.07.20
✎
12:33
|
||||
24
Serginio1
16.07.20
✎
12:41
|
||||
25
Shamandafil
20.07.20
✎
14:40
|
(16) Но если я правильно понимаю это разбор готового текста на уровне DOM или AngleSharp ещё и позволяет работать скриптам на странице, а также щёлкать по ссылкам на ней для выполнения переходов?
|
|||
26
Serginio1
20.07.20
✎
15:45
|
(25) Да селениум позволяет https://www.guru99.com/selenium-csharp-tutorial.html#15
|
|||
27
Кирпич
20.07.20
✎
16:42
|
(0) вот приблуда. типа имитирует браузер https://phantomjs.org/download.html
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |