Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
 Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
Собственно ворпос существуют ли инструменты ,как распарсить HTML страницу в динамичным контентом?
jsoup не умеет

сама страница https://www.stoloto.ru/ruslotto/game?int=right&lastdraw
код страницы на картинке
мне нужено достать id билета и цифры из таблиц

если я делаю это обычным jsoup парсером -я получаю пустоту

   Document doc = Jsoup.connect("https://www.stoloto.ru/ruslotto/game?int=right&lastdraw")
                .userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21")
                .get();
        Elements ticketId=doc.select("tr.numbers");

получаем на выходе

<tr class="numbers"> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
 <td></td> 
</tr>


естественно значений нет - так как они вставляются туда скриптом


вот сам код изнутри

если кто то делал подобные вещи подскажите как это сделать в гуглах на эту тему ничего толкового нет

К сообщению приложен файл. Размер - 53Kb
22 окт 19, 10:54    [21999600]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
в любом браузере есть интструменты разработчика. Посмотри, какие запросы идут на сервер, и выполни их сам. Скорее всего там будет json контент, который тебе и нужен
22 окт 19, 11:01    [21999608]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
естественно значений нет - так как они вставляются туда скриптом
код js на разные события (перемещение мышки) изменяет DOM.
Поэтому если не идет инфа на сервер, то достать невозможно. Ну или очень сложно.
Поэтому сам не делай динамичные сайты (одного окна).
22 окт 19, 11:09    [21999618]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
в любом браузере есть интструменты разработчика. Посмотри, какие запросы идут на сервер, и выполни их сам. Скорее всего там будет json контент, который тебе и нужен

там запросы идут постоянно вот при обновлении билетов выловил вот этот запрос
https://s.stoloto.ru/service/bingo/ruslotto/change?callback=jQuery171010123521258160095_1571660062717&numbersToChange=[{"barCode":"999847030297"},{"barCode":"999847451294"},{"barCode":"999848565640"}]&_=1571731633691

который возвращает вот такой json
jQuery171010123521258160095_1571660062717({"status":"pending"});
22 окт 19, 11:13    [21999622]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
забыл ник
Member

Откуда:
Сообщений: 3047
PetroNotC Sharp
asv79
естественно значений нет - так как они вставляются туда скриптом
код js на разные события (перемещение мышки) изменяет DOM.
Поэтому если не идет инфа на сервер, то достать невозможно. Ну или очень сложно.
Поэтому сам не делай динамичные сайты (одного окна).


В данном случае номер билета врядли генерится на клиенте, он 100% приходит с сервера, либо в json запросе либо в теге скрипт. Поэтому достаточно узнать где он лжеит и просто выдрать оттуда
22 окт 19, 11:14    [21999623]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79
естественно значений нет - так как они вставляются туда скриптом
код js на разные события (перемещение мышки) изменяет DOM.
Поэтому если не идет инфа на сервер, то достать невозможно. Ну или очень сложно.
Поэтому сам не делай динамичные сайты (одного окна).

ну как то же эти цифры туда записываются?
значит все таки с сервера в виде json прилетают
не могу найти этот запрос в куче остальных
22 окт 19, 11:14    [21999624]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
не могу найти этот запрос в куче остальных
это самое простое. Ищи на F12
22 окт 19, 11:16    [21999626]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
забыл ник
PetroNotC Sharp
пропущено...
код js на разные события (перемещение мышки) изменяет DOM.
Поэтому если не идет инфа на сервер, то достать невозможно. Ну или очень сложно.
Поэтому сам не делай динамичные сайты (одного окна).


В данном случае номер билета врядли генерится на клиенте, он 100% приходит с сервера, либо в json запросе либо в теге скрипт. Поэтому достаточно узнать где он лжеит и просто выдрать оттуда

да я думаю это так и есть-а вот как узнать?)
22 окт 19, 11:16    [21999629]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Хром, F12 - найти где в коде изменяется div
- Elements
- ПКМ на div
- Break on - Attribute modifications
22 окт 19, 11:18    [21999631]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
как узнать?
работать за JS прогера. Ты же не хотел всего месяц назад)))
22 окт 19, 11:19    [21999632]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
нашел там json

jQuery171010123521258160095_1571660062720({"status":"ok","combinations":[{"barCode":"999848718755","number":"999848718755","numbers":[25,32,66,77,85,10,44,52,62,90,8,15,45,58,70,7,22,37,75,86,3,21,53,63,73,19,30,47,55,81],"favouriteNumbers":[]},{"barCode":"999848087099","number":"999848087099","numbers":[6,42,66,76,83,35,41,54,64,78,8,13,20,38,81,5,14,25,65,90,21,33,44,60,85,7,39,46,55,71],"favouriteNumbers":[]},{"barCode":"999848722212","number":"999848722212","numbers":[7,30,56,66,85,29,39,42,50,67,1,12,41,71,84,8,23,36,43,60,10,48,59,70,80,4,19,55,62,74],"favouriteNumbers":[]},{"barCode":"999860109563","number":"999860109563","numbers":[2,10,33,58,82,15,27,37,61,70,29,40,55,78,90,3,18,24,35,43,1,36,64,77,87,14,46,51,63,80],"favouriteNumbers":[]},{"barCode":"999860072050","number":"999860072050","numbers":[10,44,51,64,85,11,37,66,76,89,8,27,35,57,79,5,45,59,78,83,9,25,31,56,87,15,23,39,41,60],"favouriteNumbers":[]},{"barCode":"999848588319","number":"999848588319","numbers":[10,21,43,67,74,31,46,51,77,83,7,26,53,65,88,19,25,38,45,80,6,41,50,62,70,2,23,32,69,85],"favouriteNumbers":[]},{"barCode":"999847498971","number":"999847498971","numbers":[5,21,48,65,86,29,39,51,62,73,15,37,46,53,75,11,31,45,58,68,27,38,40,76,87,9,55,69,71,89],"favouriteNumbers":[]},{"barCode":"999860054501","number":"999860054501","numbers":[10,33,58,70,84,13,20,34,52,68,2,40,64,76,88,6,22,30,65,72,12,26,31,66,83,5,19,42,56,81],"favouriteNumbers":[]},{"barCode":"999848715475","number":"999848715475","numbers":[7,39,55,63,75,12,23,42,53,77,5,27,33,45,90,24,41,59,68,71,2,19,36,72,80,10,35,52,62,88],"favouriteNumbers":[]},{"barCode":"999859451268","number":"999859451268","numbers":[19,33,46,78,87,11,31,51,65,80,6,20,42,54,77,26,48,62,72,90,4,25,39,75,81,15,37,49,58,68],"favouriteNumbers":[]}]});




я так понял прилетает он после вот этого запроса
https://s.stoloto.ru/service/bingo/ruslotto/change?callback=jQuery171010123521258160095_1571660062718&numbersToChange=[{"barCode":"999847030297"},{"barCode":"999847451294"},{"barCode":"999848565640"}]&_=1571731634332

в браузере этот запрос ничего не дает
вот как выудить этот json?
22 окт 19, 11:31    [21999644]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79,
надо смотреть тип запроса, скорее всего это POST. Плюс, скорее всего, куки. Так что следующий этап - SoapUI и отладка всех этих запросов.
Есть еще вариант - поуправлять браузером и брать из него готовое. Но это в ветку C#
22 окт 19, 11:36    [21999651]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
вот как выудить этот json?
повторить запрос уже от себя?
22 окт 19, 11:41    [21999656]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Ты копай давай. Что ты описываешь действия твоей руки)).
22 окт 19, 11:43    [21999660]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
да вообщем нашел я запрос

он отдает мне json
вот запрос

https://s.stoloto.ru/service/bingo/ruslotto/change?callback=jQuery171010123521258160095_1571660062730&numbersToChange=[{"barCode":"999847030297"},{"barCode":"999847451294"},{"barCode":"999848565640"}]&_=1571733298168

причем самое интересное я думал он будет давать те же билеты,но нет-дает всегда новые
но почему то запрос нужно отправлять два раза
сначала приходит статус -pending
еще раз запрос отправляешь -прилетает json с билетами

вообщем теперь уже можно это дело автоматизировать )
22 окт 19, 11:49    [21999666]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
asv79,
надо смотреть тип запроса, скорее всего это POST. Плюс, скорее всего, куки. Так что следующий этап - SoapUI и отладка всех этих запросов.
Есть еще вариант - поуправлять браузером и брать из него готовое. Но это в ветку C#

не нормально - нашел я этот запрос,получаю json
плохо что запрос нужно два раза делать


пс.я вот думаю я по шапке то не получу от СТОЛОТО? ведь я могу их сервер положить если сделаю выборку например 100 000 билетов?)
22 окт 19, 11:51    [21999668]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Конечно вмешательство незаконно.
За тобой уже выехали.
Удачи!
22 окт 19, 12:00    [21999680]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp,
)))
22 окт 19, 12:07    [21999688]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
olegeos
Member

Откуда:
Сообщений: 166
phantomjs предлагали?
22 окт 19, 12:15    [21999694]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
olegeos,
неа,да уже и не надо
я нашел запрос -получаю json в котром все что мне надо

но есть одна проблема

если я вставлю этот заппрос в браузер - то получаю норм ответ

если через постмен или java code то получаю стус-еррор
22 окт 19, 12:19    [21999698]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79
если я вставлю этот заппрос в браузер - то получаю норм ответ
если через постмен или java code то получаю стус-еррор

Посмотри в браузере - наверняка там еще заголовки/куки передаются
22 окт 19, 12:28    [21999707]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
asv79
если я вставлю этот заппрос в браузер - то получаю норм ответ
если через постмен или java code то получаю стус-еррор

Посмотри в браузере - наверняка там еще заголовки/куки передаются


передается

вот оно
Cache-Control: no-cache, no-store, must-revalidate
Connection: keep-alive
Content-Length: 64
Content-Type: application/javascript;charset=utf-8
Date: Tue, 22 Oct 2019 09:32:10 GMT
Expires: 0
Last-Modified: Mon, 26 Jul 1997 05:00:00 GMT
Pragma: no-cache
Server: nginx
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Cookie: K=1571642393849; _ga=GA1.2.555634147.1571642396; _gid=GA1.2.1790512847.1571642396; _ym_uid=1571642396502481532; _ym_d=1571642396; _vwo_uuid_v2=D743B9A20B0FA987CC2E39AC6F7BA09B2|94fca6ec37493d710643e3e05cc3dc6b; __auc=354d77d216ded2fcd7d2e3ebf87; _fbp=fb.1.1571642397269.2005321185; SESSION=3af0ffac-8547-44ae-bebf-2a169b174b6a; ga=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJycyI6WyJDVVNUT01FUiIsIlVTRVIiXSwibG9jIjoicnUiLCJydiI6IlNJVEUiLCJmbiI6ItCh0YLQsNC90LjRgdC70LDQsiIsImRuIjoi0KHRgtCw0L3QuNGB0LvQsNCyIiwic2VnIjo0LCJleHAiOjE1NzE2NTAxMDYsInZpcCI6ZmFsc2UsImFwbCI6MjAwLCJtbCI6ImFzdl83OUBpbmJveC5ydSIsInN0IjoiUkVHSVNURVJFRCIsIm9yIjoiU1RPTE9UTyIsImMiOiJSVSIsImFwdCI6IllFUyIsImYiOnRydWUsImlwIjoiMTQ0LjM2LjI0MS4xMzEiLCJpIjoyMDgyMjA4NTA4LCJmcHQiOiJCT05VUyxXQUxMRVQiLCJsIjoiYXN2Xzc5QGluYm94LnJ1IiwibSI6Ijc5MjA2OTA4ODk2IiwidmQiOmZhbHNlLCJvIjp0cnVlLCJyZCI6MTU0NjM0MzY3MjU3NiwidyI6MTU4MzE4MDE0NjQ4LCJzY3BvIjpmYWxzZSwiZmJ5IjoyMDE5fQ.6gGR2DvDjMGbrWW0jJDBF3sArsvvk78aW5KbgM8Itmw
Host: s.stoloto.ru
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36


и что делать
22 окт 19, 12:34    [21999713]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
забыл ник
Member

Откуда:
Сообщений: 3047
asv79
ivanra
пропущено...

Посмотри в браузере - наверняка там еще заголовки/куки передаются


передается

вот оно
Cache-Control: no-cache, no-store, must-revalidate
Connection: keep-alive
Content-Length: 64
Content-Type: application/javascript;charset=utf-8
Date: Tue, 22 Oct 2019 09:32:10 GMT
Expires: 0
Last-Modified: Mon, 26 Jul 1997 05:00:00 GMT
Pragma: no-cache
Server: nginx
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Cookie: K=1571642393849; _ga=GA1.2.555634147.1571642396; _gid=GA1.2.1790512847.1571642396; _ym_uid=1571642396502481532; _ym_d=1571642396; _vwo_uuid_v2=D743B9A20B0FA987CC2E39AC6F7BA09B2|94fca6ec37493d710643e3e05cc3dc6b; __auc=354d77d216ded2fcd7d2e3ebf87; _fbp=fb.1.1571642397269.2005321185; SESSION=3af0ffac-8547-44ae-bebf-2a169b174b6a; ga=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJycyI6WyJDVVNUT01FUiIsIlVTRVIiXSwibG9jIjoicnUiLCJydiI6IlNJVEUiLCJmbiI6ItCh0YLQsNC90LjRgdC70LDQsiIsImRuIjoi0KHRgtCw0L3QuNGB0LvQsNCyIiwic2VnIjo0LCJleHAiOjE1NzE2NTAxMDYsInZpcCI6ZmFsc2UsImFwbCI6MjAwLCJtbCI6ImFzdl83OUBpbmJveC5ydSIsInN0IjoiUkVHSVNURVJFRCIsIm9yIjoiU1RPTE9UTyIsImMiOiJSVSIsImFwdCI6IllFUyIsImYiOnRydWUsImlwIjoiMTQ0LjM2LjI0MS4xMzEiLCJpIjoyMDgyMjA4NTA4LCJmcHQiOiJCT05VUyxXQUxMRVQiLCJsIjoiYXN2Xzc5QGluYm94LnJ1IiwibSI6Ijc5MjA2OTA4ODk2IiwidmQiOmZhbHNlLCJvIjp0cnVlLCJyZCI6MTU0NjM0MzY3MjU3NiwidyI6MTU4MzE4MDE0NjQ4LCJzY3BvIjpmYWxzZSwiZmJ5IjoyMDE5fQ.6gGR2DvDjMGbrWW0jJDBF3sArsvvk78aW5KbgM8Itmw
Host: s.stoloto.ru
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36


и что делать

Очевидно передавать те же заголовки и куки.
22 окт 19, 12:37    [21999717]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
можно взять готовый куки хендлер, но для тебя скорее всего важен только SESSION - его можно обработать и вручную. Пока можешь просто скопировать куки-заголовок из браузера в код и посмотреть, что этого достаточно (браузер при этом не закрывай)
22 окт 19, 12:44    [21999729]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
можно взять готовый куки хендлер, но для тебя скорее всего важен только SESSION - его можно обработать и вручную. Пока можешь просто скопировать куки-заголовок из браузера в код и посмотреть, что этого достаточно (браузер при этом не закрывай)

спсибо дружище) все заработало )
22 окт 19, 13:03    [21999764]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
lleming
Member

Откуда:
Сообщений: 1654
если не хочется упарывать во всех уже браузерах есть копи эс curl Затем сюда

https://curl.trillworks.com/

Внимание куки все равно просрочатся.
23 окт 19, 18:18    [22001174]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
lleming
если не хочется упарывать во всех уже браузерах есть копи эс curl Затем сюда

https://curl.trillworks.com/

Внимание куки все равно просрочатся.

базу я уже заполнил- 200 тысяч уникальных билетов)

моя задача сейчас найти запрос который кладет нужные мне билеты в корзину

пока никак не смог идентифицировать этот запрос ,суко уже случайно 2 билета купил)
23 окт 19, 18:38    [22001192]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
нашел кнопку хрен его знает надо как то сделать такую же

<div class="buttons">
		<form action="/actions/cart/add" method="post" class="cart smaller">
						<input type="hidden" name="game" value="RUS_LOTTO">
															<input type="hidden" name="targetUrl" value="/ruslotto/game?cart=lay">
			<button name="ruslotto_cart" type="submit" onclick="metrikaGoal('addticketincart');" class="pretty_button type_primary btn_m outline_white scaller" data-acter="click" data-typer="game_addbasket" data-namer="" "=""><ins class="iconic-cart"></ins>В корзину</button>
		<input type="hidden" name="data" value="{&quot;drawId&quot;:null,&quot;gameType&quot;:&quot;manual&quot;,&quot;baseStake&quot;:100,&quot;gameMode&quot;:&quot;normal&quot;,&quot;tickets&quot;:[{&quot;barCode&quot;:&quot;999848418522&quot;,&quot;numbers&quot;:[2,11,21,58,74,17,23,36,60,87,39,40,50,75,89,5,16,20,37,68,29,44,67,71,81,7,15,34,51,85]}],&quot;favorites&quot;:[],&quot;sumTotal&quot;:100,&quot;ticketsCount&quot;:1}"
24 окт 19, 09:39    [22001381]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Давай рутрекер парсить. Магнитики нужны чо.
24 окт 19, 10:33    [22001410]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
нашел кнопку хрен его знает надо как то сделать такую же

<div class="buttons">
		<form action="/actions/cart/add" method="post" class="cart smaller">
						<input type="hidden" name="game" value="RUS_LOTTO">
															<input type="hidden" name="targetUrl" value="/ruslotto/game?cart=lay">
			<button name="ruslotto_cart" type="submit" onclick="metrikaGoal('addticketincart');" class="pretty_button type_primary btn_m outline_white scaller" data-acter="click" data-typer="game_addbasket" data-namer="" "=""><ins class="iconic-cart"></ins>В корзину</button>
		<input type="hidden" name="data" value="{&quot;drawId&quot;:null,&quot;gameType&quot;:&quot;manual&quot;,&quot;baseStake&quot;:100,&quot;gameMode&quot;:&quot;normal&quot;,&quot;tickets&quot;:[{&quot;barCode&quot;:&quot;999848418522&quot;,&quot;numbers&quot;:[2,11,21,58,74,17,23,36,60,87,39,40,50,75,89,5,16,20,37,68,29,44,67,71,81,7,15,34,51,85]}],&quot;favorites&quot;:[],&quot;sumTotal&quot;:100,&quot;ticketsCount&quot;:1}"

Вот изврат то. Смешивание логики и представления.
24 окт 19, 10:46    [22001418]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
В 2000х у меня тоже был выбор. Идти в фулстек или в классический back-end.
Моё слабое сердце не выдержало UI разработки. Посмотрел я как ребятя костылят велосипеды.

Особенно плохо было с браузерами. Сколько браузеров столько и if-ов в коде.
24 окт 19, 11:00    [22001429]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
mayton,
Ты верно решил). Фронт студенты лабают.
Еще прикольно что 404 то есть не загрузка всей страницы с кодом не останавливает программу в кавычках.
И на экран варнинг не выводится.
Что сразу исключает из корпоратива и ентерпрайза.
24 окт 19, 11:11    [22001437]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp,

короче перехватил я запрос этот

два раза он отсылается

выглядит не очень понятно,помимо куки мне надо вот это передать
game: RUS_LOTTO
targetUrl: /ruslotto/game?cart=lay
ruslotto_cart: 
data: {"drawId":null,"gameType":"manual","baseStake":100,"gameMode":"normal","tickets":[{"barCode":"999848888385","numbers":[25,34,45,64,85,12,22,44,55,70,5,14,69,72,90,13,33,54,67,78,8,28,46,58,83,15,20,32,47,73]}],"favorites":[],"sumTotal":100,"ticketsCount":1}
clientId: 555634147.1571642396
userAgent: Chrome/77
trackingId: UA-44214555-1
24 окт 19, 11:25    [22001452]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79, ох чет я сомневаюсь насчет твоей этой активности.

Ребята из Лото не вломят ли тебе пилюлей?
24 окт 19, 11:27    [22001458]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
я сформировал запрос
 String s=  Jsoup.connect("https://www.stoloto.ru/actions/cart/add")
                .ignoreContentType(true)
                .cookies(kuki)
                .method(Connection.Method.POST)
                .userAgent("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36")
                .data("game","RUS_LOTTO")
                .data("targetUrl","/ruslotto/game?cart=lay")
                .data("data","{\"drawId\":null,\"gameType\":\"manual\",\"baseStake\":100,\"gameMode\":\"normal\",\"tickets\":[{\"barCode\":\"999860397328\",\"numbers\":[2,13,27,73,84,8,26,39,40,88,16,38,50,60,77,4,19,36,54,90,5,17,34,48,79,20,42,51,63,78]}],\"favorites\":[],\"sumTotal\":100,\"ticketsCount\":1}")
                .data("userAgent","Chrome/77")
                .data("trackingId","UA-44214555-1")
                .data("clientId","555634147.1571642396")
                .execute()
                .body();
        return s;


получаю сначала норм ответ pending
а потом
{"items":[],"url":"/ruslotto/game?cart=lay","status":"ok"}


но чего то не добавляется ничо в корзину
24 окт 19, 11:38    [22001474]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
asv79, ох чет я сомневаюсь насчет твоей этой активности.

Ребята из Лото не вломят ли тебе пилюлей?


за что? все в отктром доступе
я же не сервер ломаю,а хочу купить билеты,которые мой апликейшн выбрал)
24 окт 19, 11:39    [22001476]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Увы. У них не публичное api. Официально ты нарушаешь закон.
24 окт 19, 11:50    [22001490]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79,
Увы. У них не публичное api. Официально ты нарушаешь закон.

всмысле нарушаю?
я беру запросы из браузера,которые завуалированы под кнопки
в чем разница -нажал я кнопку или запрос отправил руками на сервер
я же не меняю какие то данные
24 окт 19, 11:52    [22001493]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Представь, что есть дом, калитка со звонком. Открыто.
Ты зашел в открытую дверь и гуляешь и "нюхаешь цветы"))).
Не законно.
24 окт 19, 11:52    [22001494]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
в чем разница -нажал я кнопку или запрос отправил руками на сервер
применил отмычку.
24 окт 19, 11:53    [22001495]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
mayton
asv79, ох чет я сомневаюсь насчет твоей этой активности.

Ребята из Лото не вломят ли тебе пилюлей?


за что? все в отктром доступе
я же не сервер ломаю,а хочу купить билеты,которые мой апликейшн выбрал)

Тут понимаешь. Уголовное право на это смотрит так. Ты. Стас Иванов. С какой целью на улицу пошел с ножиком?
Хлебушек порезать? Или может ты задумал покушение на убийство?

С какими намерениями ты парсил сайт?

Улавливаешь?
24 окт 19, 11:54    [22001496]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
asv79
пропущено...


за что? все в отктром доступе
я же не сервер ломаю,а хочу купить билеты,которые мой апликейшн выбрал)

Тут понимаешь. Уголовное право на это смотрит так. Ты. Стас Иванов. С какой целью на улицу пошел с ножиком?
Хлебушек порезать? Или может ты задумал покушение на убийство?

С какими намерениями ты парсил сайт?

Улавливаешь?


ну вы даете))
я могу тоже самое делать на бумажке- обновлять билеты -записывать комбинации-- потом так же в ручную найти нужные мне билеты)
24 окт 19, 11:56    [22001499]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79,
Представь, что есть дом, калитка со звонком. Открыто.
Ты зашел в открытую дверь и гуляешь и "нюхаешь цветы"))).
Не законно.

все верно -защел в калитку=залез в базу данных
а если ты нюхаешь цветы на общественной улице -это твое право
я же не лезу на сервер
все в рамках их же запросов - просто без браузера
24 окт 19, 11:57    [22001500]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
mayton
пропущено...

Тут понимаешь. Уголовное право на это смотрит так. Ты. Стас Иванов. С какой целью на улицу пошел с ножиком?
Хлебушек порезать? Или может ты задумал покушение на убийство?

С какими намерениями ты парсил сайт?

Улавливаешь?


ну вы даете))
я могу тоже самое делать на бумажке- обновлять билеты -записывать комбинации-- потом так же в ручную найти нужные мне билеты)

Ну вот и делай на бумажке. По крайней мере с точки зрения преступления сложнее будет доказать.
И есть еще градация. Преступление с испольованием тех-средств. Как-то автомобилей. Электро-инструмента.
И т.п. Статья более тяжелая. И больше лет дают.
24 окт 19, 11:58    [22001504]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
просто без браузера
в этом дело.
Это их ИС и их программное обеспечение.
У банка тоже есть банк-клиент.
24 окт 19, 11:59    [22001506]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
Вообще, ты эмулировал браузер))
24 окт 19, 12:01    [22001511]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
Вообще, ты эмулировал браузер))


лучше скажи почему не кладется билет в корзину?)
24 окт 19, 12:08    [22001534]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Включи в браузере режим девелопера. И добавь в корзину средствами UI.
Посмотри какие сервисные методы работают и что возвращают.

Тут никто кроме тебя не будет разбираться.
24 окт 19, 12:11    [22001540]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton,
так делаю
там кнопка которая отправляет пост запрос
я вроде все так же прописал - и даже приходит ответ от сервера типо ОК
но вот в корзине то пусто
24 окт 19, 12:22    [22001566]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Так не бывает.
Значит не все повторил со старта сессии.
24 окт 19, 12:31    [22001580]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Не один запрос, а все запросы за сеанс с куками.
Это если в js проверок нет.
24 окт 19, 12:33    [22001583]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
mayton,
так делаю
там кнопка которая отправляет пост запрос
я вроде все так же прописал - и даже приходит ответ от сервера типо ОК
но вот в корзине то пусто

Подожди. Ты же наполнял корзину. Что изменилось с тех пор как она перестала наполнятся.

P.S. Ну хитёёёр...
24 окт 19, 13:44    [22001653]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
asv79
mayton,
так делаю
там кнопка которая отправляет пост запрос
я вроде все так же прописал - и даже приходит ответ от сервера типо ОК
но вот в корзине то пусто

Подожди. Ты же наполнял корзину. Что изменилось с тех пор как она перестала наполнятся.

P.S. Ну хитёёёр...

не я не корзину наполнял- а базу

я эмулирую нажатие кнопки обновить билеты - получаю 10 билетов-заношу их в базу-обновляю -заношу

пропустил через фильтр - у меня есть номера билетов и комбинации-все что нужно каким то образом положить их в корзину
24 окт 19, 15:01    [22001777]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79,
Не один запрос, а все запросы за сеанс с куками.
Это если в js проверок нет.

там html форма

<form action="/actions/cart/add" method="post" class="cart smaller">
						<input type="hidden" name="game" value="RUS_LOTTO">
															<input type="hidden" name="targetUrl" value="/ruslotto/game?cart=lay">
			<button name="ruslotto_cart" type="submit" onclick="metrikaGoal('addticketincart');" class="pretty_button type_primary btn_m outline_white scaller" data-acter="click" data-typer="game_addbasket" data-namer="" "=""><ins class="iconic-cart"></ins>В корзину</button>
		<input type="hidden" name="data" value="{&quot;drawId&quot;:null,&quot;gameType&quot;:&quot;manual&quot;,&quot;baseStake&quot;:100,&quot;gameMode&quot;:&quot;normal&quot;,&quot;tickets&quot;:[{&quot;barCode&quot;:&quot;999848863201&quot;,&quot;numbers&quot;:[6,17,25,48,55,4,37,69,72,88,20,57,60,77,85,2,18,24,59,64,11,35,46,79,82,26,31,42,78,80]}],&quot;favorites&quot;:[],&quot;sumTotal&quot;:100,&quot;ticketsCount&quot;:1}"></form>


я отправляю все как и тут ,кроме вот этоого скрипта - я не могу вообще его найти

onclick="metrikaGoal('addticketincart')


мне приходит нормальный json
{"status":"pending"}


а когда второй раз посылаю запрос ( да у них почему то два раза запрос отпрааляется)
выходит вот такой json

{"items":[],"url":"/ruslotto/game?cart=lay","status":"ok"}


а в корзине пусто-потому что туда судя по всему не лег никакой итем -почему -понятия не имею

я отловил этот запрос в девтуле -когда кнопку жмешь все куки так же отправляю

не пойму в чем прикол
24 окт 19, 15:16    [22001797]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
вот эти два запроса Post уходят на сервер

К сообщению приложен файл. Размер - 62Kb
24 окт 19, 15:22    [22001801]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
запросы add

вот они изнутри

Request URL: https://www.stoloto.ru/actions/cart/add
Request Method: POST
Status Code: 200 OK
Remote Address: 178.248.233.104:443
Referrer Policy: no-referrer-when-downgrade
Cache-Control: no-cache, no-store, must-revalidate
Connection: keep-alive
Content-Length: 1349
Content-Type: application/json
Date: Thu, 24 Oct 2019 12:15:50 GMT
Expires: 0
Last-Build: 1571919350396
Last-Modified: Mon, 26 Jul 1997 05:00:00 GMT
Pragma: no-cache
Server: nginx
Set-Cookie: gjac=true;Path=/;Secure;HttpOnly
Set-Cookie: gbr=b0cc93ed-db48-45dd-a552-c7122bcbc5cb;Path=/;Domain=.stoloto.ru;Expires=Thu, 24-Oct-2019 14:15:50 GMT;Max-Age=7200;HttpOnly
Set-Cookie: gbr=;Path=/;Expires=Thu, 01-Jan-1970 00:00:00 GMT;Max-Age=0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Content-Length: 576
Content-Type: application/x-www-form-urlencoded
Cookie: isgua=false; K=1571642393849; _ga=GA1.2.555634147.1571642396; welcome=true; _ym_uid=1571642396502481532; _ym_d=1571642396; _vwo_uuid_v2=D743B9A20B0FA987CC2E39AC6F7BA09B2|94fca6ec37493d710643e3e05cc3dc6b; __auc=354d77d216ded2fcd7d2e3ebf87; flocktory-uuid=9eebf146-8146-4fc2-89a9-15931e5d3b11-4; _fbp=fb.1.1571642397269.2005321185; SESSION=3af0ffac-8547-44ae-bebf-2a169b174b6a; wimhash21=1d86f019fc149371f67eacc92411a2de; _gid=GA1.2.528436366.1571900704; _ym_isad=2; _SI_VID_1.6befd9a02400013179aba889=1134aad1af7fd95e3601aaf2; __utmc=35201507; __utmz=35201507.1571903908.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __asc=4806e88c16dfda786524a293fbf; _ym_visorc_15627616=w; gbr=b0cc93ed-db48-45dd-a552-c7122bcbc5cb; ga=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJycyI6WyJDVVNUT01FUiIsIlVTRVIiXSwibG9jIjoicnUiLCJydiI6IlNJVEUiLCJmbiI6ItCh0YLQsNC90LjRgdC70LDQsiIsImRuIjoi0KHRgtCw0L3QuNGB0LvQsNCyIiwic2VnIjo0LCJleHAiOjE1NzE5MTk2NTIsInZpcCI6ZmFsc2UsImFwbCI6MjAwLCJtbCI6ImFzdl83OUBpbmJveC5ydSIsInN0IjoiUkVHSVNURVJFRCIsIm9yIjoiU1RPTE9UTyIsImMiOiJSVSIsImFwdCI6IllFUyIsImYiOnRydWUsImlwIjoiMTQ0LjM2LjI0MS4xMzEiLCJpIjoyMDgyMjA4NTA4LCJmcHQiOiJXQUxMRVQsQk9OVVMiLCJsIjoiYXN2Xzc5QGluYm94LnJ1IiwibSI6Ijc5MjA2OTA4ODk2IiwidmQiOmZhbHNlLCJvIjp0cnVlLCJyZCI6MTU0NjM0MzY3MjU3NiwidyI6MTU4MzE4MDE0NjQ4LCJzY3BvIjpmYWxzZSwiZmJ5IjoyMDE5fQ.AztdR1kJdGbrj07KwIAczwTf00OLExLfihIhz5Zoyu4; __utma=35201507.555634147.1571642396.1571911246.1571919247.3; __utmt=1; __utmb=35201507.1.10.1571919247; _gat=1; _SI_SID_1.6befd9a02400013179aba889=7cbf3fafc3d0f8314874ad9d.1571919349795.187193; gjac=true
Host: www.stoloto.ru
Origin: https://www.stoloto.ru
Referer: https://www.stoloto.ru/ruslotto/game?cart=lay&lastdraw
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36
X-Requested-With: XMLHttpRequest
game: RUS_LOTTO
targetUrl: /ruslotto/game?cart=lay
ruslotto_cart: 
data: {"drawId":null,"gameType":"manual","baseStake":100,"gameMode":"normal","tickets":[{"barCode":"999848989081","numbers":[18,28,30,69,78,1,10,45,52,82,3,23,36,48,66,11,25,35,68,75,17,29,47,51,80,8,41,57,79,89]}],"favorites":[],"sumTotal":100,"ticketsCount":1}
clientId: 555634147.1571642396
userAgent: Chrome/77
trackingId: UA-44214555-1
24 окт 19, 15:28    [22001814]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
а вот мои запрос

   public static String parsUrl() throws IOException {

        Map<String, String> kuki = new HashMap<String, String>();
        kuki.put("isgua", "false");
        kuki.put("K", "1571642393849");
        kuki.put("_ga", "GA1.2.555634147.1571642396");
        kuki.put("welcome", "true");
        kuki.put("_ym_uid", "1571642396502481532");
        kuki.put("_ym_d", "1571642396");
        kuki.put("_vwo_uuid_v2", "D743B9A20B0FA987CC2E39AC6F7BA09B2|94fca6ec37493d710643e3e05cc3dc6b");
        kuki.put("__auc", "354d77d216ded2fcd7d2e3ebf87");
        kuki.put("flocktory-uuid", "9eebf146-8146-4fc2-89a9-15931e5d3b11-4");
        kuki.put("_fbp", "fb.1.1571642397269.2005321185");
        kuki.put("SESSION", "3af0ffac-8547-44ae-bebf-2a169b174b6a");
        kuki.put("wimhash21", "1d86f019fc149371f67eacc92411a2de");
        kuki.put("gbr", "80a9b31e-426d-412e-b3b9-1d6fbc2cc706");
        kuki.put(" __asc", "e963747316dfc95435c20033bee");
        kuki.put("_gid", "GA1.2.1790512847.1571642396");
        kuki.put("_ym_visorc_15627616", "w");
        kuki.put("_ym_isad=", "2");
        kuki.put("_SI_VID_1.6befd9a02400013179aba889", "1134aad1af7fd95e3601aaf2");
        kuki.put("__utma", "35201507.555634147.1571642396.1571903908.1571903908.1");
        kuki.put("__utmc", "35201507");
        kuki.put("__utmz", "35201507.1571903908.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)");
        kuki.put("ga", "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJycyI6WyJDVVNUT01FUiIsIlVTRVIiXSwibG9jIjoicnUiLCJydiI6IlNJVEUiLCJmbiI6ItCh0YLQsNC90LjRgdC70LDQsiIsImRuIjoi0KHRgtCw0L3QuNGB0LvQsNCyIiwic2VnIjo0LCJleHAiOjE1NzE5MDkwODksInZpcCI6ZmFsc2UsImFwbCI6MjAwLCJtbCI6ImFzdl83OUBpbmJveC5ydSIsInN0IjoiUkVHSVNURVJFRCIsIm9yIjoiU1RPTE9UTyIsImMiOiJSVSIsImFwdCI6IllFUyIsImYiOnRydWUsImlwIjoiMTQ0LjM2LjI0MS4xMzEiLCJpIjoyMDgyMjA4NTA4LCJmcHQiOiJXQUxMRVQsQk9OVVMiLCJsIjoiYXN2Xzc5QGluYm94LnJ1IiwibSI6Ijc5MjA2OTA4ODk2IiwidmQiOmZhbHNlLCJvIjp0cnVlLCJyZCI6MTU0NjM0MzY3MjU3NiwidyI6MTU4MzE4MDE0NjQ4LCJzY3BvIjpmYWxzZSwiZmJ5IjoyMDE5fQ.Z17yMsbZ_NRxYzOObp_TIQ_a4oQB_zAdRNzuMQUqg4Y");
        kuki.put("_SI_SID_1.6befd9a02400013179aba889", "c52e1af865d0f8314b1f565e.1571909780891.432640; _gat=1");
//        String json = Jsoup.connect("https://s.stoloto.ru/service/bingo/ruslotto/change?callback=jQuery171010123521258160095_1571660062730&numbersToChange=%5B%7B%22barCode%22%3A%22999847030297%22%7D%2C%7B%22barCode%22%3A%22999847451294%22%7D%2C%7B%22barCode%22%3A%22999848565640%22%7D%5D&_=1571733298168")

      String s=  Jsoup.connect("https://www.stoloto.ru/actions/cart/add")
                .ignoreContentType(true)
                .cookies(kuki)
                .method(Connection.Method.POST)
                .userAgent("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36")
                .data("game","RUS_LOTTO")
                .data("targetUrl","/ruslotto/game?cart=lay")
                .data("data","{\"drawId\":null,\"gameType\":\"manual\",\"baseStake\":100,\"gameMode\":\"normal\",\"tickets\":[{\"barCode\":\"999848970204\",\"numbers\":[26,33,49,52,86,37,41,69,74,85,8,19,29,62,78,7,15,28,63,87,16,31,55,64,70,6,24,40,57,81]}],\"favorites\":[],\"sumTotal\":100,\"ticketsCount\":1}")
                .data("userAgent","Chrome/77")
                .data("trackingId","UA-44214555-1")
                .data("clientId","555634147.1571642396")
                .execute()
                .body();
        return s;


    }
24 окт 19, 15:30    [22001817]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79, шикарно. Так можно и тебе пароль поменять.
24 окт 19, 15:35    [22001823]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton,
там авторизация через телефон ,врядли получится)

а вот по поводу запроса -есть какие то идеи?

как мне мои билеты в корзину положить?
24 окт 19, 15:39    [22001828]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
не могу вообще его найти

onclick="metrikaGoal('addticketincart')
как так?
В фоксе есть Консоль браузера. Туда идут ошибки.
Если там не ругается на отсутствии функции, значит ты плохо искал. Ищи.
24 окт 19, 15:48    [22001832]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
https://stackoverflow.com/questions/18877190/chrome-debugging-break-on-next-click-event
24 окт 19, 16:05    [22001847]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79,
чего то много данных отправляешь. У тебя на форме 3 инпута и 1 кнопка. Откуда взялись
                .data("userAgent","Chrome/77")
                .data("trackingId","UA-44214555-1")
                .data("clientId","555634147.1571642396")

Ну и на куки с гугль аналитикой и яндекс метриками можно забить, тут главное SESSON
24 окт 19, 16:18    [22001854]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79
не могу вообще его найти

onclick="metrikaGoal('addticketincart')
как так?
В фоксе есть Консоль браузера. Туда идут ошибки.
Если там не ругается на отсутствии функции, значит ты плохо искал. Ищи.

запрос то я не в браузере эмулирую а в джава коде
там ничего не ругается)
24 окт 19, 16:19    [22001856]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Странный ты.
Ты сказал не нашел в js функцию АБС.
Дак ищи. Ты должен знать отладчиком что она делает.
24 окт 19, 16:21    [22001858]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
какая то жесть хибер компонует лист из 10000 тысяч объектов уже 10 минут это нормально вообще?)
командой repo.findAll();
24 окт 19, 16:22    [22001859]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
какая то жесть хибер компонует лист из 10000 тысяч объектов уже 10 минут это нормально вообще?)
командой repo.findAll();
а хибер для чего вообще служит?
24 окт 19, 16:23    [22001862]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79
какая то жесть хибер компонует лист из 10000 тысяч объектов уже 10 минут это нормально вообще?)
командой repo.findAll();
а хибер для чего вообще служит?

всмысле для чего- облегачает роботу с базами данных,представляет записи в виде сущностей
что то печаль какая то выходит - неужели хибер не может переварить 10.500 сущностей
24 окт 19, 16:29    [22001868]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Не можешь запомнить "хибер для crud"?
24 окт 19, 16:38    [22001875]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ппц хибер не может выбрать 10 тысяч сущностей?))
серьезно

repo.findAll()

тупо вешает на глушняк все)
может проблема в том что у каждого тикета еще лист из 30 номеров и это получается уже 300000 записей ,хрен его знает

так база работает,по одному нормально тикеты выдергиваются

что за печаль беда то
24 окт 19, 16:38    [22001876]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
забыл ник
Member

Откуда:
Сообщений: 3047
asv79
ппц хибер не может выбрать 10 тысяч сущностей?))
серьезно

repo.findAll()

тупо вешает на глушняк все)
может проблема в том что у каждого тикета еще лист из 30 номеров и это получается уже 300000 записей ,хрен его знает

так база работает,по одному нормально тикеты выдергиваются

что за печаль беда то

Где-то недалеко вадя горько плачет
24 окт 19, 16:42    [22001882]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79,
Не можешь запомнить "хибер для crud"?

а что по твоему select * from table?
не круд разве?
24 окт 19, 16:45    [22001888]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79
PetroNotC Sharp
asv79,
Не можешь запомнить "хибер для crud"?

а что по твоему select * from table?
не круд разве?
нет. Звезда это говнокод
24 окт 19, 16:47    [22001890]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79,
10000 записей это ни о чем для хибера. Если конечно нет косяков в меппинге
24 окт 19, 16:50    [22001892]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7995
и если достаточно памяти у JVM
24 окт 19, 16:55    [22001896]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
ппц хибер не может выбрать 10 тысяч сущностей?))
серьезно

repo.findAll()

тупо вешает на глушняк все)
может проблема в том что у каждого тикета еще лист из 30 номеров и это получается уже 300000 записей ,хрен его знает

так база работает,по одному нормально тикеты выдергиваются

что за печаль беда то

Еще один гвоздь в крышку гроба всех Хибера

Чтоб ты делал в отделе дата-аналитики? Там датасеты начинаются от миллионов.
24 окт 19, 17:03    [22001900]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
Leonid Kudryavtsev
и если достаточно памяти у JVM

если бы не достаточно было -ошибка бы вывалилась
вот сама сущность

@Data
@Entity(name = "ticket")
public class TicketEntity {
    @Id
    private Long number;
    @ElementCollection(targetClass = Long.class, fetch = FetchType.LAZY)
    @CollectionTable(name = "numbers", joinColumns = @JoinColumn(name = "number"))
    private List<Long> numbers;
}

если фетч стоит lazy я нормально выбираю все,но потом не могу получить листы с nambers
если фетч ставлю eger то все привет-виснет на глушняк
24 окт 19, 17:05    [22001902]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
asv79,
10000 записей это ни о чем для хибера. Если конечно нет косяков в меппинге

да косяков то нет ,проблема в фетче я так понимаю
24 окт 19, 17:06    [22001906]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16791
забыл ник
Где-то недалеко вадя горько плачет
а чё мне плакать?
24 окт 19, 17:07    [22001908]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Вот забегая вперед. Тебе repo.findAll() зачем нужен?

Тоесть что ты будешь делать потом со всей коллекцией всех своих билетов?
24 окт 19, 17:09    [22001910]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
Вот забегая вперед. Тебе repo.findAll() зачем нужен?

Тоесть что ты будешь делать потом со всей коллекцией всех своих билетов?

класть их номера в лист и выявлять какой процент каждой цифры

поставил фетч лейзи
вытянул билеты
сейчас уже минут 5 пытаюсь достать цифры -это 300000 записей где то даже поболе
не пойму толи комп дохлый толи что ,ну не должно так долго это быть явно же
24 окт 19, 17:14    [22001914]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
облегчил хиберу задачу-взять все тикеты и у первых 100 тикетов выбрать номера и положить их в лист

3 минуты делал)

итого на 10800 воросов (325000 записей) нужно минут 40))это чо за прикол
24 окт 19, 17:21    [22001923]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79,

foreign key - то в базе есть?
24 окт 19, 17:22    [22001926]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra
asv79,

foreign key - то в базе есть?

есть как же без него
24 окт 19, 17:27    [22001931]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
ivanra
Member

Откуда:
Сообщений: 868
asv79,

если хочется жадно выбрать все 10000 записей с вложенными элементами, то в findAll надо написать селект с джойном, типа такого
"select t from ticket t join fetch t.numbers"
24 окт 19, 17:34    [22001936]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16791
asv79
облегчил хиберу задачу-взять все тикеты и у первых 100 тикетов выбрать номера и положить их в лист

3 минуты делал)

итого на 10800 воросов (325000 записей) нужно минут 40))это чо за прикол
для базы эти размеры ни о чём...
24 окт 19, 17:42    [22001937]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
забыл ник
Member

Откуда:
Сообщений: 3047
вадя
asv79
облегчил хиберу задачу-взять все тикеты и у первых 100 тикетов выбрать номера и положить их в лист

3 минуты делал)

итого на 10800 воросов (325000 записей) нужно минут 40))это чо за прикол
для базы эти размеры ни о чём...


Да что ты понимаешь? Зато не переедешь с mysql на Oracle если вдруг понадобится.

На всякий - </sarcasm>
24 окт 19, 17:48    [22001943]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
ivanra,да он нормально выбирает,но очень долго
24 окт 19, 17:54    [22001956]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16791
забыл ник
Да что ты понимаешь? Зато не переедешь с mysql на Oracle если вдруг понадобится.
тебе слова mayton напомнить?

даже если переедешь на Oracle или mssql это не ускорит. так что есть ли смысл в переезде?
потому как хибер не зависит от субд....
24 окт 19, 17:57    [22001959]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
забыл ник
Member

Откуда:
Сообщений: 3047
П.C. Не помогло...
24 окт 19, 17:58    [22001960]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
mayton
Вот забегая вперед. Тебе repo.findAll() зачем нужен?

Тоесть что ты будешь делать потом со всей коллекцией всех своих билетов?

класть их номера в лист и выявлять какой процент каждой цифры

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

Коробочное решение этой проблемы - это pagination. Тоесть разбивание выборки на страницы.

SELECT select_list
    FROM table_expression
    [LIMIT { number | ALL }] [OFFSET number]


Но это базе не нужно. Это нужно веб-серверу или юай чтоб он не умер от испуга.

Вот так.

Или если-б ты работал с ResultSet напрямую то ты некоторые калькуляции бы выполнял
one-by-one. Тоесть в режиме последовательной обработки как работают со Streams.
В 90% случаев мне удавалось написать такой SQL запрос который делает все из коробки.
В том числе и твою аналитику. И расчет средних. И корреляции и дисперсии и прочее.
Даже без включения Java.

Вообще современная Dbms такая как MS_SQL и Oracle делает все вычисления в контексте SQL
машины и выдавая в Java только резалт.

Так-же работает и PL/SQL машина в оракле. Она старается избавить программиста от коллекций.
Предлагая ему универсальный шаблон процессинга данных бесконечного размера. Типа

(скопипащено отсюда https://gerardnico.com/lang/plsql/open_for)
 OPEN emp_cv FOR sql_stmt USING my_job;
   LOOP
      FETCH emp_cv INTO emp_rec;
      EXIT WHEN emp_cv%NOTFOUND;
      -- process record
   END LOOP;
   CLOSE emp_cv;


Ты же решил в Java делать бигдату и сам попался. Ну не на 300 тыщях так на 3 лямах ты все равно
упадешь и Хибер тут будет тоже непричем. А причем здесь будет изначальная постановка задачи.
А именно ЧТО ТЫ СЧИТАЕШЬ? Каков метод и алгоритм.

Обсуди в форуме метод и алгоритм твоих билетов! Безотносительно хибера и базы.
24 окт 19, 18:14    [22001982]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
В тему стримов вот еще почитай как тут пишут.

https://blog.madadipouya.com/2019/03/26/high-performance-data-fetching-using-spring-data-jpa-stream/

public interface BookRepository extends Repository<Book, Long> {

    Stream<Book> getAll();
}
24 окт 19, 18:33    [22002009]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton

Ты же решил в Java делать бигдату и сам попался. Ну не на 300 тыщях так на 3 лямах ты все равно
упадешь и Хибер тут будет тоже непричем. А причем здесь будет изначальная постановка задачи.
А именно ЧТО ТЫ СЧИТАЕШЬ? Каков метод и алгоритм.

Обсуди в форуме метод и алгоритм твоих билетов! Безотносительно хибера и базы.

я просто удивлен почему так медленно,даже 100 билетов ( в которых по 30 Long ) итого 3000 лонгов достает около 3 минут
у меня не падет ни хибер ни сервер ничего,просто тупо очень долго
но оно и правильно,не спроста же придумали Lazy

а
вообще мне не нужно обращаться к таблице ticket
мне нужно обратиться вот к этой таблице

@ElementCollection(targetClass = Long.class, fetch = FetchType.LAZY)
    @CollectionTable(name = "numbers", joinColumns = @JoinColumn(name = "number"))
    private List<Long> numbers;

надо просто загуглить как в рамках хибернейта к такого рода таблицам обращаться можно
24 окт 19, 18:52    [22002022]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79, еще раз. Твоя проблема не в Хибере а в постановке задачи. Ты решаешь не задачу билетов а технологиеское
нагромождение технологий 90% из которых тебе в принципе не нужна. Ты втащил их просто по приколу.

Вот сделай чистую рафинированную задачи билетов. Как на контестерах. Запаблиши ее в Программирование.

И тебе ее решат ра 2 секунды на каком-нить Паскале.

Разумеется я отсюда исключил парсинг сайта. Ведь это вообще другая задача верно?
24 окт 19, 18:57    [22002025]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
chpasha
Member

Откуда:
Сообщений: 8594
забыл ник
П.C. Не помогло...

нужен бейджик "не понимаю сарказм" рядом с именем мембера Картинка с другого сайта.
24 окт 19, 19:05    [22002028]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton

Разумеется я отсюда исключил парсинг сайта. Ведь это вообще другая задача верно?

это все одна задача
взять с сайта билеты положить их в базу ,а затем произвести над ними некие манипуляции,назовем их аналитикой

тоесть проблем никаких нет - все работает ,и даже билеты выбираются мгновенно
но вот когда я циклом прохожусь по этим билетам и берут с каждого билета свой лист с 30 Long
вот тут хибер и спотыкается

решения этой задачи -простое обращаться напрямую к таблице коллекции
надо посмотреть как это делается и все)

я не пойму про какие вычисления ты говоришь -найти плохие цифры?
у меня это две строчки кода и хешмапа
24 окт 19, 19:08    [22002029]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
у меня это две строчки кода и хешмапа

(устало)
Зачем тебе хеш-мапа когда у тебя база данных?
24 окт 19, 19:09    [22002030]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
asv79
у меня это две строчки кода и хешмапа

(устало)
Зачем тебе хеш-мапа когда у тебя база данных?

затем что в рамках хибера у меня ограничен функционал)
24 окт 19, 22:37    [22002127]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Как будет угодно. Видимо тебе не нужно решать задачу билетов.

Тебе хочется играть с хибером. Разве-ж я могу помешать если просто хочется?
25 окт 19, 09:05    [22002220]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
Как будет угодно. Видимо тебе не нужно решать задачу билетов.

Тебе хочется играть с хибером. Разве-ж я могу помешать если просто хочется?

какая задача у билетов?

пс.уже все куплено,за ночь компухтер определелил те цифры ,которые встречаются чаше других
25 окт 19, 11:40    [22002386]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Вот прикинь. Владельцы игорного бизнеса (покер клубы, казино и лотереи в том числе) - обычно
выходцы из преступного мира. И тут вдруг (!) внезапно они узнают что какой-то пиздюк (я говорю
не о тебе а просто образно) на публичном форуме хачит и ломает их бизнес. И делает публичной
их подноготную.

Тут есть разные варианты развития событий. До тех пор пока ты не создал им проблем - ты никому не нужен.

Но если... короче думай сам.
25 окт 19, 12:02    [22002412]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2463
asv79,
Короче, твоя задача и топик интересны только молодняку.
Это не кейс энтерпрайза.
Мысль понял?
25 окт 19, 12:09    [22002425]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
Вот прикинь. Владельцы игорного бизнеса (покер клубы, казино и лотереи в том числе) - обычно
выходцы из преступного мира. И тут вдруг (!) внезапно они узнают что какой-то пиздюк (я говорю
не о тебе а просто образно) на публичном форуме хачит и ломает их бизнес. И делает публичной
их подноготную.

Тут есть разные варианты развития событий. До тех пор пока ты не создал им проблем - ты никому не нужен.

Но если... короче думай сам.

ну ты прикалываешься))
хакать -это куда то проникать,что то ломать,обходить защиту и тд
я беру билеты с их сайта,которые в свободном доступе и заношу их в базу,провожу аналитику и покупаю нужные мне билеты-где тут нарушение?
это тоже самое если я назову тебя хакером- когда ты по арбузу стучишь в магазине)))

проблемы сейчас можно огребсти просто возвращаясь домой ,если твоя рожа не понравится ппс или у них не добит план по 228
и что теперь из дома не выходить?))
25 окт 19, 13:36    [22002550]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
PetroNotC Sharp
asv79,
Короче, твоя задача и топик интересны только молодняку.
Это не кейс энтерпрайза.
Мысль понял?

задача выполнена) тему можно закрывать
25 окт 19, 13:41    [22002561]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
asv79
это тоже самое если я назову тебя хакером- когда ты по арбузу стучишь в магазине)))

Представь как щас напряглись плечевые мышцы у админов которые смотрят на лог.. где твой айпишник и ты балуешся.
Совая туда нелепицу. Вот чо они щас думают? Хакир? Не? ХЗ... но лучше на всяк случай доложить куда надо
25 окт 19, 14:38    [22002665]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
asv79
это тоже самое если я назову тебя хакером- когда ты по арбузу стучишь в магазине)))

Представь как щас напряглись плечевые мышцы у админов которые смотрят на лог.. где твой айпишник и ты балуешся.
Совая туда нелепицу. Вот чо они щас думают? Хакир? Не? ХЗ... но лучше на всяк случай доложить куда надо

и что они там видят?человек нажимает кнопку обновить-ищет билет какой ему хочется
я ж туда ничего не сую в том то и дело)
25 окт 19, 16:39    [22002830]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Кстати вот подумай как отличить мышко-клик человека от долбёжки бота.
25 окт 19, 17:34    [22002920]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
Кстати вот подумай как отличить мышко-клик человека от долбёжки бота.

интервалы запроса будут постоянные ,а если жадый то и отчень короткие

это легко обходится рандомным таймаутом

майтон не там ты копаешь)если бы эти ребята хотели ограничить доступ к билетом - они бы что нибудь придумали
но они не видят угрозы в том,ЧТО Кто то посмотрит на комбинации 10 000 билетов-бабки в ларьках продают у них там в каждоый пачке по 1000 билетов ,А таких пачек коробки -тоже ее в хакерши записывать будем или брать только слепых ?)))

и я могу зайти в такой ларек и пересмотреть все билеты и купить такой какой хочу
25 окт 19, 18:19    [22002952]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
mayton
Member

Откуда: loopback
Сообщений: 42912
Ну ОК. Сообщи там. Когда выиграешь лям.
25 окт 19, 18:28    [22002960]     Ответить | Цитировать Сообщить модератору
 Re: Парсинг динамического контента  [new]
asv79
Member

Откуда: Тверь
Сообщений: 2714
mayton
Ну ОК. Сообщи там. Когда выиграешь лям.

да не выйграть там такие деньги
эти ребята дураки чтоли по твоему))
программа дает им комбинацию с минимально возможными для них потерями - бывает так,когда куплено много билетов -невозможно не отдать крупный выйгрышь - но это до 100000 р,А все остальное фейки-те кто там по 300 млн и выше брали
25 окт 19, 18:31    [22002964]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
Все форумы / Java Ответить