Size: a a a

Python для анализа данных

2021 May 08

IS

I Sh in Python для анализа данных
Вернее не так. Если прям в js-скрипте содержится информация, то вытащить из него, а если js-скрипт делает аякс-запрос на сервер, то сам скрипт не нужен, нужно отправить аналогичный запрос на сервер, и получите данные в виде json.
источник

S

Slavik in Python для анализа данных
Ну там динамический блок какой-то на сиранице. Страница по умолчанию номер скрывает, но если сделать клик по скрытому номеру, то он открывается, но через обычный html его не видно, естественное, поэтому думаю, как вытянуть)
источник

IS

I Sh in Python для анализа данных
Ну, поищите по ID этого блока, какая функция что делает при каком-то событии, например, при onClick
источник

S

Slavik in Python для анализа данных
Ок, спасибо)
источник

СИ

Сергей Ильин... in Python для анализа данных
Да уже показали бы сайт и то, что хотите «поймать», было бы быстрее.
источник

S

Slavik in Python для анализа данных
источник

S

Slavik in Python для анализа данных
Собственно, нужно номера получать
источник

IS

I Sh in Python для анализа данных
Наверное, это вам нужно))
источник

S

Slavik in Python для анализа данных
Yes
источник

S

Slavik in Python для анализа данных
Только вот не пойму как правильно к этому блоку сделать запрос
источник

ВЛ

Владислав Литвинюк... in Python для анализа данных
get http
источник

s

slavapro in Python для анализа данных
Поесть хорошего супа
источник

S

Slavik in Python для анализа данных
Так я и так через бьютифул суп делаю все, но это блок там не вижу, или неправильно запросил)
источник

s

slavapro in Python для анализа данных
Так в возвращенном запросе инфа есть или нет?
источник

S

Slavik in Python для анализа данных
Буду за компом, скину пример моего запроса. Но когда просто через суп запрашиваю html, номера там нет
источник

IS

I Sh in Python для анализа данных
Чтобы получить телефон, нужно делать запрос сюда:

https://www.drom.ru/api/sales/bulls/42067469/contacts?contactData=HASH


42067469 - это идентификатор страницы.

Но самая сложность тут заключается в том, чтобы "выудить", какой скрипт и каким образом формирует хеш (или что это там у них) для переменной contactData. Каждый раз формируется разный хеш.

В самой html-странице внизу, в самом последнем js идут пременные. Они хранятся в data-drom-module-data. В том числе, там есть такое:

"contact":{"type":3,"phonePrefix":"+7","contactData":"YqzI4iiPuhsVQPyUHtxSNIz3LAzA8T5rZR19VKRouxbH8xCbPipeLUqGaR-f-sH6adiiF7VORA","baseUrl":"https:\\/\\/www.drom.ru\\/api\\/sales\\/bulls\\/42067469\\/contacts","contactToken":"MTYyMDQ4NTU0NXw0MjA2NzQ2OXxhYzYxOGVmZjZLRWVCOUp6VXp3NTd3cGt3L1RIUTBhNHwyOTk2NTA0Mjkx.91829fddce7c6b13994cf364c09ab6895cfb4291120641374f0500948d1699a9","regionIp":3103990069,"captchaUrl":"https:\\/\\/www.drom.ru\\/captcha\\/","recaptchaPublicKey":"6LeHc2gUAAAAAAJvzPB_jYaV3d2-Q0PB0IxgeoLv","shouldUseRecaptcha":true,"hasOwnerSellsMark":false,"contactPreventNotification":null}


Скорее всего, какой-то ява-скрипт из этого набора формирует хеш contactData, который отправляется на сервер. Осталось дело за малым - в куче сжатого яваскрипт-кода разобраться, какая именно функция формирует этот хеш. Узнать, как она его формирует, и тогда можно будет самому формировать этот хеш и отправлять на сервер запросы.

Ну, мне так кажется...
источник

S

Slavik in Python для анализа данных
Спасибо) попробуем
источник

s

slavapro in Python для анализа данных
Я уже глянул, там сплошной жс
источник

s

slavapro in Python для анализа данных
источник

S

Slavik in Python для анализа данных
Будем мудохаться😀
источник