Как сделать локальное зеркало веб-сайта с всплывающим окном подтверждения?

Мне нужно получить локальную копию веб-сайта, которая требует подтверждения своего возраста перед отображением содержимого. Никаких сложных форм, просто флажок и кнопка, «да, я взрослый». Я пытался использовать wget но без успеха, он загружает только этот начальный экран и ничего больше. Httrack тоже не удалось.

Я считаю, что информация подтверждения хранится в файле cookie, и я думаю, что узнал, какой из них он есть. Поэтому я скопировал его с помощью расширения chrome экспорта cookie.txt , а затем сохранил его в .txt и снова попробовал wget с параметром --load-cookies , но он все равно не работает.

Как загрузить такой веб-сайт? Я злоупотребляю wget или, может быть, есть лучший способ сделать это?

РЕДАКТИРОВАТЬ:

Хорошо, DownThemAll, похоже, выполняет эту работу. Наконец, мне удалось с помощью wget , используя

 wget -mpkrl 0 http://example.com 

возможно, -rl 0 было тем, чего я раньше отсутствовал.

После изучения источника страницы я обнаружил, что не задействована перезагрузка / перенаправление, подстраницы загружаются правильно, а экран подтверждения – это только iframe поверх страницы, поэтому я могу избавиться от него с помощью простого сценария.

(В этом конкретном случае беспорядок с кукисами в конечном итоге не был необходим, поэтому я не отправляю это как ответ.)

Это зависит от того, как настроен сайт, не все из них используют файлы cookie для этого – некоторые могут использовать такие вещи, как php-сеансы, и я не знаю, сможет ли wget обрабатывать его напрямую. Если вам удалось найти идентификатор сеанса (эта часть часто скрывается в адресной строке браузером или используется только один раз при входе в систему), вы можете использовать это (URL + session-id) в качестве start-url для wget.

Вернуться к файлам cookie … Мне, однако, нужно было делать подобные вещи самостоятельно, поэтому несколько советов …

Некоторые сайты используют файлы cookie, которые временно, т.е. только последний сеанс. Обычно они не хранятся в файле cookie.txt / cookie, поэтому не все файлы cookie-экспортеров будут экспортировать их – если они экспортируют из файла / базы данных, то нет … если он экспортирует из браузера – «память» (в сайт-база), то да. Personally, I've found the "cookie.txt export" extension for the Chrome-browser the best, as it saves *all* cookies (including temps) from just the active tab. (ну, на самом деле, он показывает файлы cookie как текст, вы должны пометить и скопировать его и сохранить его в файл самостоятельно). Для входа в систему; проверка «Запомнить меня», часто превращает временный файл cookie, который не сохраняется в файле cookie / database, в постоянный, поэтому его можно легко экспортировать (вероятно, это не поможет для подтверждения возраста).

После того, как вы сохранили файл cookie.txt, может быть неплохо немного его отредактировать – увеличить время истечения и, возможно, отредактировать временные файлы cookie на постоянные (подумайте, что это просто «переключатель»). Вы также можете удалить любые ненужные файлы cookie (например, объявления и т. Д.).

Сохранение окна браузера в то время, когда работает wget, и, возможно, обновление страницы или просмотр немного времени и времени – убедитесь, что ваш сеанс не истек до завершения wget.

Есть также расширения для браузеров … Мне нравится «Down-them-all» для Firefox; который позволяет загружать контент (хотя более интерактивно, чем wget). Вы получаете список ссылок текущей страницы и просто проверяете ссылки и / или изображения, которые хотите сохранить, и, при желании, сколько уровней в глубине вы хотите использовать для ссылок. Если вы впервые входите в систему и / или проверяете свой возраст, прежде чем запускать его, то «Down-them-all» будет зарегистрирован и зарегистрирован вместе с вашим браузером и должен иметь возможность загружать все, что вы могли бы загрузить вручную. Играйте с шаблонами переименования и нумерацией, так как я думаю, что он будет хранить все страницы на одном уровне, и в противном случае может быть именованный конфликт (он будет спрашивать, прежде чем перезаписывать).

Удачи!