Nov 06

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

Snoopy - это PHP класс эмулирующий работу веб. браузера, он позволяет получать содержимое страницы и например отправлять данные форм.

Последняя дата обновления ноябрь 2005 года.

Запросу на получение страницы можно подсунуть: хост (адрес страницы), порт, куки, реферальную страницу(адрес страницы по ссылке с которой якобы заходим), агента(название браузера), логин/пароль базовой авторизации, все что хотите в содержимое заголовка (header). Еще можно установить атрибуты прокси сервера - это нужно во первых для анонимности и во вторых против бана можно сменить прокси сервер. Есть поддержка редиректов, фреймов.

Кроме получения содержимого страницы есть функции для:

а) вытаскивания чистого текста (без тегов)

б) получения всех ссылок на странице

в) получения форм

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

==================================

Теперь о том чего нет, и что хотелось бы видеть в классе

1) Более сложный парсинг ссылок, т.е. не только нужны порой сами урлы, но и текст ссылок

2) Парсинг всех используемых на странице картинок

3) Более сложная работа с формами. Получение формы в объект, заполнение переменных объекта значениями, отправка запроса

Немного фантастики …

4) Эмуляция выполнения событий javascript например клики по объектам наведение курсором и т.д. получения измененной страницы после действия javascript. Это же касается и vb script

5) Выполнение ajax запросов. Получение измененной страницы после исполнения ajax

6) Поддержка работы flesh обектов. Возможность сохранить в файл, нажать на ссылку

Теги: , ,