вторник, 17 июня 2014 г.

Python код: собрать все ссылки с сайта

Описание

В этом примере мы будем использовать модуль re, для того чтобы получить все ссылки с любого веб-сайта. 
Один из самых мощных функций в re модуле является re.findall()
В то время как re.search() используется, чтобы найти первое вхождение удовлетворяющее шаблону, re.findall() находит все вхождения и возвращает их в виде списка строк.

Собираем все ссылки с веб-сайта

Этот пример будет получить все ссылки из любого HTML кода. 
Чтобы найти их, мы в этом примере будем использовать модуль urllib2 вместе 
с re.module.


import urllib2
import re

#производим соединение с URL
website = urllib2.urlopen(url)

#читаем html код
html = website.read()

#используем re.findall для парсинга всех ссылок с сайта
links = re.findall('"((http|ftp)s?://.*?)"', html)

print links

urllib2 - https://docs.python.org/2/library/urllib2.html
re       - https://docs.python.org/2/library/re.html

Комментариев нет:

Отправить комментарий