Если я попробую wget на веб-странице, я получу страницу в виде HTML. Возможно ли получить только текст файла без связанного HTML? (Это необходимо для меня, поскольку некоторые страницы HTML содержат программу c, загружаемую с тегами html. Мне нужно открыть ее в браузере и вручную скопировать текст, чтобы создать файл .c.)
17
.c
. Это не сложно, но это зависит от структуры страницы. Если вы предоставите ссылку, возможно, кто-то поможет вам с точным кодом. В противном случаеsed
илиperl
ваши друзья.Ответы:
wget
только получит документ. Если документ в HTML, то, что вы хотите, это результат анализа документа.Вы могли бы, например, использовать
lynx -dump -nolist
, если у вас есть рысь вокруг.lynx
это легкий, простой веб-браузер, который имеет-dump
функцию, используемую для вывода результатов процесса синтаксического анализа.-nolist
избегает списка ссылок в конце, который появится, если на странице есть какие-либо гиперссылки.Как упомянуто @Thor,
elinks
может использоваться и для этого, так как он также имеет-dump
опцию (и должен-no-references
пропустить список ссылок). Это может быть особенно полезно, если вы переходите по какому-либо сайту, используя -sigh-frames (MTFBWY).Кроме того, имейте в виду, что, если страница действительно не является просто кодом C с тегами HTML, вам нужно будет проверить результат, просто чтобы убедиться, что там нет ничего, кроме кода C.
источник
Если у вас не установлены эти другие инструменты, есть только wget, а на странице нет форматирования, кроме обычного текста и ссылок, например, исходного кода или списка файлов, вы можете удалить HTML-код с помощью sed следующим образом:
Это использует wget для вывода исходного кода страницы в STDOUT и sed для удаления любых пар <> и чего-либо между ними.
Затем вы можете перенаправить вывод команды sed в файл, который вы хотите создать, используя>:
NB. Вы можете обнаружить, что в файле есть лишние пробелы, которые вам не нужны (например, строки с отступом в несколько столбцов)
Возможно, проще всего использовать ваш текстовый редактор, чтобы привести файл в порядок (или исходный форматер, когда вы загружаете исходный код на Си).
Если вам нужно проделать одну и ту же простую вещь с каждой строкой файла, вы можете включить команду для этого в команду sed (в данном случае один пробел):
источник
просто чтобы добавить еще один инструмент. Я предпочитаю
w3m
, которыйlynx
похож на консольный браузер. Вы можете проверить, что уже доступно в вашей системе.источник