2013-08-23 3 views
-2

У меня есть папка, полная HTML-документов, которые хранятся в копиях веб-страниц, но мне нужно знать, с какого сайта они пришли, какую функцию я могу использовать для извлечения имени веб-сайта из документов? Я ничего не нашел в модуле BeautifulSoup. Есть ли конкретный вопрос, который я должен искать в документе? Мне не нужно знать полный URL-адрес, мне просто нужно знать название веб-сайта.Извлечь сайт из HTML-документа, полученного от

+0

Это невозможно, если нет тега 'base'. – falsetru

+0

В общем, вы не можете. Файл HTML обычно не содержит информации об URL-адресе, используемом для доступа к нему. – BrenBarn

+2

При сохранении страницы обычно содержат комментарий, вставленный в код, где говорится, откуда они пришли ... http://stackoverflow.com/questions/6062210/how-to-find-the-comment-tag-with-beautifulsoup – mplungjan

ответ

1

Вы можете сделать это только если URL упоминается где-то в источнике ...

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

Если ссылка указана на всех страницах, то ваша задача проста: либо используйте re или BeautifulSoup, либо lxml и xpath, чтобы получить необходимую информацию. Существуют и другие инструменты, но любой из них будет делать.

+0

Мне не нужно знать URL-адрес, просто имя сайта. –

+1

ответ все еще яблоки. Найдите, где указано имя, если это согласованная вещь между страницами, просто возьмите имя, используя один из инструментов, которые я упомянул. Скорее всего, грива сайта и доменное имя довольно похожи. – Sheena

+0

Спасибо, я попробую это. –

Смежные вопросы