Python : ne pas afficher les résultats mais directement dans le .csv
Résolu
nik029
Messages postés
315
Statut
Membre
-
nik029 Messages postés 315 Statut Membre -
nik029 Messages postés 315 Statut Membre -
Bonjour,
Je cherche la formule Python 3 me permettant que des éléments scrapés ne se listent pas à la suite dans le terminal IDLE mais qu'ils s'enregistrent directement en csv. J'ai réussi à enregistrer ces éléments en .csv mais qu'à la fin du processus d'affichage de chaque élément dans le terminal - ce qui prend beaucoup de temps lorsqu'il y en a beaucoup.
Des solutions ? :)
Merci d'avance
Une fois un problème résolu, mettez un +1 sur la réponse qui vous à aidez et mettez Problème Résolu ! ;-)
Je cherche la formule Python 3 me permettant que des éléments scrapés ne se listent pas à la suite dans le terminal IDLE mais qu'ils s'enregistrent directement en csv. J'ai réussi à enregistrer ces éléments en .csv mais qu'à la fin du processus d'affichage de chaque élément dans le terminal - ce qui prend beaucoup de temps lorsqu'il y en a beaucoup.
Des solutions ? :)
Merci d'avance
Configuration:
Python 3.7.3
Macbook Pro Retina 13" mi-2014
Python 3.7.3
Macbook Pro Retina 13" mi-2014
Une fois un problème résolu, mettez un +1 sur la réponse qui vous à aidez et mettez Problème Résolu ! ;-)
2 réponses
-
Bonjour,
la syntaxetwint -u username
ne doit pas être utilisée dans la console Python. Essayez la même chose dans un terminal si vous utilisez Linux ou une invite de commande si vous utilisez Windows.
Si vous souhaitez utiliser twint dans un code Python, il faudra faireimport twint
, puis regarder la documentation pour savoir comment utiliser ce module. -
Bonjour,
apparement vous avez modifié votre question le temps que j'écrive ma première réponse ^^ Par contre dans votre nouvelle question, on ne voit plus que vous parlez du module twint (ce qui est toujours le cas j'imagine).
Dans la documentation il est écrit :
"twint -u username -o file.csv --csv
- Scrape Tweets and save as a csv file."
Et je viens de tester, les éléments sont enregistrés régulièrement, vous n'avez pas besoins d'attendre la fin de l'execution pour voir les premières lignes. (La même chose peut-être faite en code Python)-
Effectivement ça enregistre. Le problème c'est que tous les tweets s'affichent à la suite dans le terminal. Pour des comptes comptant des milliers de tweets, ça fait beaucoup. Je cherchais donc un code Python permettant d'enregistrer effectivement en .csv sans avoir besoin que tous les tweets s'affichent dans le terminal
-
J'ai l'impression que twint ne donne pas la possibilité de supprimer l'affichage.
Cependant vous pouvez quand même redirigé la sortie pour qu'elle n'apparaisse plus, mais cela aura pour effet de supprimer la totalité de la sortie, y compris vos propre print.
Vous pouvez le faire dans le terminal sous Linux en faisantcommande > /dev/null
(je ne connais pas l'équivalent de /dev/null sous Windows).
Vous pouvez aussi le faire dans votre programme Python de cette manièreimport sys sys.stdout = None # Suite du programme
Est-ce que j'ai répondu à votre question cette fois ? :) -
-