Здравствуйте, уважаемые.
Получил тут задание спарсить некоторые данные с одного сайта. Для конкретики приведу частично задачу:
Задан товар:
http://www.walmart.com/ip/Danskin-No...-Shoe/51630300
1) Найти все варианты данного товара (цвет-размер).
а.Найти наличие на складе каждого варианта,
b. Найти цену для каждого варианта.
Сложность в том, что цена и количество товара на складе изменяется, при выборе другого размера или цвета, а при детальном исследовании я обнаружил, с помощью DevTools Chrome, что при выборе, скажем, другого размера, никакой запрос к серверу не отправляется, ни GET ни POST. Отсюда первый вопрос:
Вопрос 1: Можно ли как-то получать инфу от БД не отправляя дополнительных запросов серверу?
Далее я пытался разобраться с тем, что же происходит непосредственно в JS при изменении цвета или смене размера, и тут столкнулся со второй сложностью, все подключенные к сайту скрипты минимизированы. Весь JS код расположен в одну строку и являет собой не читабельную кашу из 1-2 символьных имён функций и переменных.
Вопрос 2: Как разобраться в таком адском минимизированном коде?
Пробовал скачивать страницу целиком и в скачанных скриптах преобразовывать код при помощи специальной он-лайн утилитки, которая более менее возвращает формат JS тексту, но что-то не заработало.
И наконец
Вопрос 3: Как можно имитировать поведение пользователя на сайте. К примеру клик по раскрывающемуся списку с размерами товара и дальнейший выбор размера. Или имитировать выбор цвета продукта?
Ведь сам парсер-то будет писаться на PHP, а он не в состоянии влиять на дальнейшие клиентские JS события. Как-то можно было бы выкрутиться, если бы были запросы на сервер и ответы в JSON или скажем XML, но ничего такого не происходит.
Прошу, помогите разобраться. У меня разрушен мозг.