-3

Чтобы предвосхитить это, у меня абсолютно нулевые знания в отношении программирования. Я хочу получить доступ к 17 датам, которые не показаны на этом архивированном веб-сайте: https://web.archive.org/web/20031002051647/http://www.avengedsevenfold.com:80/tourdates/tourdates.php (и, конечно, скрытые даты на старых / новых версиях этого сайта)

Когда я нажимаю "Далее" или "Показать все даты", он просто перезагружает веб-сайт. Есть ли способ получить доступ к датам? Я пролистал исходный код, но ничего не нашел. Но даты должны быть где-то, верно?

1 ответ1

1

Они не заархивированы.

Интернет-архив не имеет доступа к серверной логике веб-сайта и не может полностью воспроизвести поведение динамических страниц (например, PHP в данном случае); лучшее, что он может сделать, - это переходить по ссылкам и загружать каждый известный URL как независимую статическую страницу.

Сканер может отслеживать и архивировать прямые ссылки, такие как <a href="news.php?page=2"> . Однако "следующий"/"показать все" на вашем веб-сайте не являются обычными ссылками - они представляют собой нечестивую комбинацию действий JavaScript и форм на основе POST, одна из которых уже заставила бы сканер не распознать их как ссылку:

<a href="#" onclick="JavaScript:nextPage()"><img src=...></a>

Хотя архиватор может хранить копию клиентского JavaScript-кода, он не интерпретирует этот код и не понимает, что делает здесь nextPage(), и поэтому должен полностью пропустить эти кнопки на основе JS. (Вы можете видеть, что у IA есть только этот URL-адрес в архиве.)

(Даже если архиватор сможет обнаружить, что делает код JS, ему все равно не удастся коснуться этой конкретной формы - использование POST подразумевает, что каждый запрос может вызвать некоторые изменения на сервере. Только запросы GET безопасны для автоматического сканирования.)

Поэтому, когда вы нажимаете кнопку "Далее", браузер по-прежнему запускает nextPage() и отправляет запрос со значением page = 2 или около того, но соответствующего серверного кода для обработки этого запроса больше нет - Архив может ответить только с помощью те же статические данные, что и раньше.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .