samedi 16 mars 2013

Scrapy – Un framework dédié à l’extraction de données en ligne....



Si votre passion dans la vie, c'est de programmer des bots qui vont crawler des sites web pour en extraire le contenu afin d'alimenter vos propres bases données, vous serez surement heureux de découvrir Scrapy ?
Ce framework dédié au parcours de site et à l'extraction de données structurées dans les pages web peut être utilisé dans de nombreuses situations... Par exemple pour faire du monitoring, extraire des liens, ou encore récupérer du contenu éditorial...etc.
Scrapy est léger, facile à comprendre (ça utilise du Xpath et un système de règles), et fonctionne sous Windows, Linux, Mac, BSD...etc (c'est du Python). Voici ce que ça donne par exemple pour extraire les liens des derniers torrents mis en ligne sur Mininova.
class MininovaSpider(CrawlSpider):

    name = 'mininova.org'
    allowed_domains = ['mininova.org']
    start_urls = ['http://www.mininova.org/today']
    rules = [Rule(SgmlLinkExtractor(allow=['/tor/\d+']), 'parse_torrent')]

    def parse_torrent(self, response):
        x = HtmlXPathSelector(response)

        torrent = TorrentItem()
        torrent['url'] = response.url
        torrent['name'] = x.select("//h1/text()").extract()
        torrent['description'] = x.select("//div[@id='description']").extract()
        torrent['size'] = x.select("//div[@id='info-left']/p[2]/text()[2]").extract()
        return torrent

Source : http://korben.info/extraire-donnee-pages-web.html

Aucun commentaire:

Enregistrer un commentaire