Кто-нибудь знает, как сохранить веб-страницу со скриптами с помощью wget? Или какие параметры нужно использовать для достижения?

Веб-страница содержит сценарии, и кажется, что только расширение SingleFile Core в Chrome может сохранить все свойства содержимого. Firefox не может сохранить содержимое таблицы, и встроенное сохранение Chrome будет зависать, показывая сообщение «Пожалуйста, подождите» для страницы результатов.

Другие части на странице не важны, только содержание в таблице, поэтому я решил найти способ сделать это, но потратил час на анализ исходного кода и просмотр информации из инструментов разработчика f12, но не могу способ сохранить только содержимое таблицы.

Вот веб-страница: http://m.marine.gov.mo/seawayScheduled/RealTimeSailing.aspx?type=dataDepartureXML&local=PE&lang=ENG

Спасибо за помощь!

1 ответ1

0

И ответ:

wget --header 'Content-type: application/json' --header 'Cookie: ASP.NET_SessionId=1bsq4nw4nj30groly5pv5zt3' --post-data='{"local":"PE","type":"dataDepartureXML"}' 'http://m.marine.gov.mo/seawayScheduled/RealTimeSailing.aspx/GetData'

Где бит «ASP.NET ....» - это cookie, который, к сожалению, обязателен. Этот файл cookie отправляется при получении главной страницы. Таким образом, вы должны сделать это немного по-другому с помощью двух команд:

  • тот, который получает главную страницу и удаляет ее (но сохраняет cookie в cookie.txt):

    wget --keep-session-cookies --save-cookies cookie.txt 'http://m.marine.gov.mo/seawayScheduled/RealTimeSailing.aspx?type=dataDepartureXML&local=PE&lang=ENG' -O /dev/null
    
  • тот, который получает данные, отправляя куки:

    wget --load-cookies cookie.txt --header 'Content-type: application/json' --post-data='{"local":"PE","type":"dataDepartureXML"}' 'http://m.marine.gov.mo/seawayScheduled/RealTimeSailing.aspx/GetData' -O data.json
    

Данные, которые вы получаете, представляют собой массив JSON с двумя строковыми элементами, которые являются необработанным HTML. Специальные символы (кавычки, скобки ....) экранируются, поэтому результат не очень читабелен как таковой, его нетрудно очистить с помощью нескольких глобальных изменений в редакторе.

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