Как я упоминал в своем комментарии, решение вашей проблемы полностью зависит от реализации «страницы отказа от ответственности». Похоже, что предыдущее решение использовало опции cURL, определенные более подробно here. В основном, то, что он инструктирует cURL, это предоставить файл фальшивых файлов cookie (именуемый «nosuchfile»), а затем следовать за перенаправлением заголовка, предоставленным сайтом, к которому вы пытались получить доступ. По-видимому, этот сайт был настроен таким образом, что если посетитель утверждал, что не имеет правильных файлов cookie, он немедленно перенаправляет посетителя на страницу отказа от ответственности.
Вам не удалось создать файл с именем «nosuchfile» в вашем рабочем каталоге, не так ли? Если нет, похоже, что целевой сайт изменил способ работы страницы отказа от ответственности. Если это так, мы не можем помочь, если у нас нет реальной страницы, к которой вы пытаетесь получить доступ к диагностике.
В примере, который вы ссылаетесь в своем вопросе, они используют Javascript для перехода от заявления об отказе от ответственности, что может быть непростым, чтобы пройти мимо.
Для примера вы упоминаете, однако ...
- Откройте его в Chrome (или Firefox с Firebug)
- правой кнопкой мыши на каком-то пустом месте страницы и выберите «Просмотр кода элемента»
- Перейдите на вкладку «Сеть»
- Если есть контент, нажмите кнопку «Очистить» внизу, чтобы выгрузить страницу.
- Принимать лицензионное соглашение
- Смотреть весь трафик, который встречается по сети. В моем случае лучший результат был интересным. Если вы щелкните по нему, вы можете просмотреть его, чтобы убедиться, что это действительно документ HTML. Если вы нажмете на вкладке «Заголовки» в этом элементе, она покажет вам «URL-адрес запроса». В моем случае это было: http://bank.hangseng.com/1/PA_1_1_P1/ComSvlet_MiniSite_eng_gif?app=eINVCFundPriceDividend&pri_fund_code=U42360&data_selection=0&keyword=U42360&start_day=30&start_month=03&start_year=2012&end_day=18&end_month=04&end_year=2012&data_selection2=0
Вы можете получить доступ к этому URL-адресу напрямую, не принимая никаких лицензионных соглашений вручную или из cURL.
Обратите внимание, что если вы уже приняли соглашение, на этом сайте хранится файл cookie с указанием, который необходимо будет удалить, чтобы вернуться на страницу лицензионного соглашения. Вы можете сделать это, щелкнув вкладку «Ресурсы», затем перейдя в «Cookies» и удалив каждый из них, а затем обновив URL, который вы указали выше.
Это фактический сайт, к которому вы пытаетесь получить доступ? Я думаю, что решение будет очень зависимым от сайта. –
@Jeff да, это одна из страниц, которые я хочу получить – lokheart