@miron258

Как спарсить все точки с google карты на сайте padi.com?

Добрый день, необходимо сделать парсер с сайта padi.com.
Мне нужна база данных дайв шопов. Идеально в EXEL. Колонки такие:
Название дайв шопа
URL
Email
Телефон
Имя человека (если есть)
В первую очередь США, Канада, Германия, Швейцария, Австрия, Англия. Потом поговорим за другие страны.
США и Канада совсем в первую очередь
Источники:
padi.com в меню – find a diveshop, выскакивает карта с отмеченными дайв шопами
__________________________
Как мне разом получить json со всеми шопами с данного сайта а именно точки с карты GOOGLE, в данный момент загрузка происходит через AJAX динамическая и точки подгружаются по мере пролистывания карты (ответ отдается в JSON но лишь для точек которые входят в область видимости карты). Подскажите как спарсить все точки разом с данной карты. Вот конкретная ссылка https://apps.padi.com/scuba-diving/dive-shop-locat... Заранее спасибо. Очень жду ответа. Хотя бы подскажите реализуемо это или нет?
  • Вопрос задан
  • 443 просмотра
Решения вопроса 1
@AlexndrNovikov
Solution Architect in Spiral Scout
Не вижу особых препятствий:

Eсть URL
POST https://apps.padi.com/scuba-diving/dive-shop-locator/Dsl/GetDiveShops


Принимает json параметры
cLat:33.638802
cLong:-117.603366
courseIds:""
distanceMeters:1000000
eLng:-117.1913786953125
levelIds:"3,2"
mapSize:"smaller"
nLat:33.99591887201719
offeringIds:""
sLat:33.280197932608054
searchString:""
specialtyId:-1
storeNumber:-1
wLng:-118.0153533046875

Нужно провести ревес инженириг (читай, потестить с разными параметрами) на что влияют Lang/Lng/Lat параметры, и написать просто цикл запросов который бы для всех участков карты запросил с сервера результаты.
В тестах поможет ответ - там как раз границы указаны. (массив SearchRecords - результаты поиска, Bounds - границы участка поиска)
По сути задача
1) понять какие входные параметры запроса возвращают какой участок карты в Bounds)
2) подобрать массив входных параметров чтобы перебрать все участки карты последовательно
3) запустить цикл и спарсить ответы из SearchRecords в одно хранилище
4) убрать дубликаты
5) преобразовать в желаемый формат (csv для excel)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы