Так, іноді .
Є дві речі, які часто трапляються. Ваше посилання більше не працює, тому я не впевнений у фактичному сценарії в цьому випадку, тому я підсумую інше посилання.
Перенаправлення HTTP
Це те, що ви бачите з Bit.ly
іншими послугами. Тоді потрібно зробити відповідь на переспрямування HTTP. Коли ви відвідуєте http://bit.ly/oH3410, він переспрямовує на фактичну URL-адресу. Іноді одна URL-адреса переспрямовує на іншу. Ви можете бачити це, якщо підключити URL-адресу до http://web-sniffer.net/ або, використовуючи, [curl][1] -I http://bit.ly/oH3410
ви побачите, що повертає 301, що вказує на нове місцеположення.
Отже, щоб мати справу з перенаправленням HTTP, вам потрібно просто зафіксувати запит HTTP HEAD, поки ви не перестанете отримувати відповіді в 300-х (сподіваємось отримати 200). Майте на увазі, можливо, вони переспрямуються в цикл, який ніколи не закінчиться. Це можна зробити за допомогою CURL або будь-якого засобу HTTP.
Сторінка завантажувача
Саме це використовує більшість сайтів для завантаження. Ви натискаєте посилання для завантаження, і воно перенаправляє вас на сторінку з купою оголошень і каже: "Ваше завантаження розпочнеться незабаром" щось подібне. [ Приклад ]. За допомогою них ви можете спробувати розібрати фактичну пряму посилання з URL-адреси, але це буде конкретним сайтом, і більшість сайтів не включатимуть його, щоб запобігти вам його обійти. Це робиться або через meta http-equiv="refresh"
тег у заголовку, або JavaScript (найпоширеніший). Однак JS зазвичай має запасний заголовок.
Однак рішення є. Якщо ви подивитесь на джерело на сторінці завантаження, ви зазвичай побачите <meta http-equiv="refresh">
тег (як правило, в <noscript>
тезі) з атрибутом, URL
який вказує на фактичне завантаження. Тому використовуйте CURL (або будь-який інший інструмент HTTP), щоб завантажити сторінку, розібрати її та захопити це значення. Сайт може виключати це, хоча, якщо вони хочуть бути справді неприємними, тому вимагає, щоб у вас був JavaScript для завантаження файлів.
Ймовірно, існує блок JavaScript, який також посилається на завантаження. Він може бути прихованим або пов’язаним з іншої URL-адреси. Ваш пробіг може змінюватися, намагаючись проаналізувати його. Також на сторінці може бути "пряме посилання". Ви можете спробувати декілька методів, щоб знайти це, але знову ж таки, що це може бути затуманено через JavaScript або навіть пропущено всі разом.
edit
щоб побачити джерело розмітки, як я це зробив.