2010-09-22 18 views
3

Je voudrais savoir comment puis-je démarrer un moteur de balayage basé sur Scrapy. J'ai installé l'outil via apt-get install et j'ai essayé d'exécuter un exemple:Comment utiliser Scrapy

 
/usr/share/doc/scrapy/examples/googledir/googledir$ scrapy list 
directory.google.com 

/usr/share/doc/scrapy/examples/googledir/googledir$ scrapy crawl 

Je piraté le code des araignées/google_directory.py, mais il semble qu'il ne soit pas exécuté, parce que je ne vois pas de imprime que j'ai inséré. J'ai lu leur documentation, mais je n'ai rien trouvé à ce sujet; As tu des idées?

Aussi, si vous pensez que pour crawler un site web, je devrais utiliser d'autres outils, s'il vous plaît faites le moi savoir. Je ne suis pas expérimenté avec les outils Python et Python est un must.

Merci!

Répondre

7

Vous avez manqué le nom d'araignée dans la commande crawl. Utilisation:

$ scrapy crawl directory.google.com 

Aussi, je vous suggère de copier l'exemple de projet à votre domicile, au lieu de travailler dans le répertoire /usr/share/doc/scrapy/examples/, vous pouvez le modifier et jouer avec:

$ cp -r /usr/share/doc/scrapy/examples/googledir ~ 
$ cd ~/googledir 
$ scrapy crawl directory.google.com 
+0

Merci, ça a marché! –

7

EveryBlock.com a publié quelques quality scraping code en utilisant lxml, urllib2 et Django comme pile.

Scraperwiki.com est inspirant, plein d'exemples de grattoirs en python.

Exemple simple avec cssselect:

from lxml.html import fromstring 

dom = fromstring('<html... ...') 
navigation_links = [a.get('href') for a in htm.cssselect('#navigation a')] 
+0

Merci pour votre réponse ; Je vais jeter un coup d'oeil sur ces technologies plus tard. –