php скриптовый веб-браузер
Мне нужна функция трассировки перенаправления URL в php, например http://www.wheregoes.com/.
Я хочу обнаружить четыре вида перенаправлений:
- Http 301 редирект
- Http 302 редирект
- перенаправление метатега
- перенаправление javascript
Если я использую curl, я могу легко обнаружить перенаправление 301, 302, но трудно обнаружить два других перенаправления.
Так что я хочу веб-браузер с поддержкой скриптов, я буду использовать библиотеку, как показано ниже:
$browser = Browser::createBrowser('chrome');
$delay = 10; // (This is a important parameter for detecting javascript or meta tag redirection).
$browser->load($url, $delay, function onLoadComplete($arr_track_url){
print_r($arr_track_url);
});
Я искал и столкнулся с некоторыми библиотеками, такими как http://www.simpletest.org/en/browser_documentation.html, но они не поддерживают перенаправление javascript и мета-тегов.
Есть ли какой-нибудь php-скрипт с браузером? Или я могу легко обнаружить перенаправление JavaScript или метатега?
1 ответ
Если я правильно понял, вы хотите выяснить, к чему в конце концов приводит какая-то ссылка, отличается ли этот окончательный URL-адрес от того, который URL-адрес был фактически нажат?
Если так, то я думаю, что лучший подход - это позволить браузеру выполнить свою работу и потом посмотреть, где он появился. Таким образом, вы получаете именно "нормальное" поведение браузера, а не какой-то библиотеки.
Используйте (скрытый) iframe, куда вы загружаете URL. Затем дождитесь события window.load или чего-то еще и запросите местоположение документов после этого. Я не пробовал это сейчас, но звучит выполнимо для меня...