IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Exécution d'un crawler dans un programme Python


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Par défaut Exécution d'un crawler dans un programme Python
    Bonjour,

    Je suis nouveau dans le développement Python pour faire du moissonnage de site web.

    J'ai besoin de savoir comment exécuter un scrapeur Scrapy dans un programme Python.
    J'explique ...

    Mon programme est bâtis en 3 fichiers;
    1 - Programme principal
    2 - Un scrapeur pour récupération des liens sur un page web
    3 - Un scrapeur pour la récupération des données qui me préoccupe

    Mon programme principale boucle sur un résultat dans une base de données.
    Chaque enregistrement retourné comprend le lien internet du site a moissonner, le nom du scraper à utiliser ainsi que certain paramètres a passer a mon scraper.

    Selon ce que j'ai vu sur le Web je dois utiliser Twisted, mais il y a un problème avec ça, si j'incrémente un compteur dans la boucle, celui-ci est toujours à 0???


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Début boucle sur les enregistrements
          x +=1
          yield runner.crawl(monscrapeur,par1=x,par2,par3)
          print("x : " + x)
    Fin boucle
    Mon résultat après 2 boucle

    X = 0
    X = 0
    J'ai l'impression que c'est Twisted qui est en cause.

    Avez-vous une solution à ce problème?
    Comment exécuter un scraper dans un script python?


    Merci de votre aide!

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Par défaut
    Bonjour,

    J'ai effectué des recherches sur le Web et mon problème provient du reactor.

    Je cherche donc une autre méthode pour exécuter mon crawl dans un boucle.

    En passant, le nom de mon crawl dans la boucle est dynamique. Il change selon les données que j'ai a moissonner.
    C'est la mon défit exécuter dans une boucle FOR un appel de crawl dynamique.

    J'ai besoin lors de l'exécution de mon crawl que le code python soit pause jusqu'à ce que le crawl est terminé son exécution, car le crawl en cours d'exécution prépare des données dans la DB pour la prochaine exécution crawl qui sera exécuté dans la même boucle FOR.

    La boucle FOR (sur un cursor) contient les liens WEB et les nom du crawl a exécuter dans la boucle FOR.


    Je dois trouver une solution à mon problème.



    Merci de votre aide.

Discussions similaires

  1. Réponses: 6
    Dernier message: 09/09/2018, 16h30
  2. problème dans un programme python
    Par finelame13 dans le forum Général Python
    Réponses: 3
    Dernier message: 10/06/2015, 11h31
  3. Executé programme python dans un terminal
    Par Raikyn dans le forum Général Python
    Réponses: 3
    Dernier message: 17/04/2012, 10h51
  4. Réponses: 2
    Dernier message: 07/09/2011, 23h24
  5. [Lien]erreur dans mon programme python
    Par durnambule dans le forum Général Python
    Réponses: 11
    Dernier message: 29/01/2004, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo