Как экспортировать все гиперссылки на веб-странице?

Как экспортировать все гиперссылки на веб-странице?

Мне нужно решение для экспорта всех гиперссылок на веб-странице (на веб-странице, а не со всего веб-сайта) и способ указать ссылки, которые я хочу экспортировать, например, только гиперссылки, начинающиеся сhttps://superuser.com/questions/исключая все остальное.
Экспорт в виде текстового файла предпочтителен, и результаты должны отображаться один под другим, по одному URL на строку:

https://superuser.com/questions/1  
https://superuser.com/questions/2  
https://superuser.com/questions/3
[...]

решение1

Если вы работаете в системе Linux или Unix (например, FreeBSD или macOS), вы можете открыть сеанс терминала и выполнить следующую команду:

wget -O - http://example.com/webpage.htm | \
sed 's/href=/\nhref=/g' | \
grep href=\"http://specify.com | \
sed 's/.*href="//g;s/".*//g' > out.txt

В обычных случаях в одной строке может быть несколько <a href>тегов, поэтому вам придется сначала их вырезать (первый sedдобавляет новые строки перед каждым ключевым словом href, чтобы убедиться, что в одной строке не более одного тега).
Чтобы извлечь ссылки с нескольких похожих страниц, например, все вопросы на первых 10 страницах этого сайта, используйте цикл for.

для i в $(seq 1 10); сделать
wget -O - http://superuser.com/questions?page=$i | \
sed 's/href=/\nhref=/g' | \
grep -E 'href="http://superuser.com/questions/[0-9]+' | \
sed 's/.*href="//g;s/".*//g' >> out.txt
сделанный

Не забудьте заменить http://example.com/webpage.htmна ваш фактический URL страницы и http://specify.comна предыдущую строку, которую вы хотите указать.
Вы можете указать не только предыдущую строку для URL для экспорта, но и шаблон регулярного выражения, если вы используете egrepили grep -Eв команде, приведенной выше.
Если вы работаете в Windows, рассмотрите возможность использованияCygwin. Не забудьте выбрать пакеты Wget, grep, и sed.

решение2

Если вас устраивает использование Firefox, вы можете использовать дополнениеSnap-ссылки Plus

  1. Удерживая нажатой правую кнопку мыши, выделите ссылки.

  2. Когда они будут выделены, нажмите и удерживайте клавишу Control, одновременно отпуская правую кнопку мыши.

Связанный контент