Je ne veux pas “apprendre à programmer” – Je veux écrire des programmes “sympas”… en voici un exemple

J’essaye d’être rigoureux dans ma manière d’apprendre à utiliser python. Mais coder un jeu de roulette ou un pendu ne m’amuse pas longtemps. Et ne m’est pas utile. Pourtant, les tutoriaux que vous trouvez sur le net vous donnent comme exercice ce genre d’exemples.

Alors de temps à autres – et avant de commencer à utiliser The Programming Historian – j’essaye de faire quelque chose de (vaguement) utile, mais surtout très sympas.

En voici un exemple:

C’est une représentation des gens qui ont retweeté mes tweets sur Twitter.

Le code que j’ai utilisé a été appris à THATCamp Luxembourg/Trier que le CVCE et son Digital Humanities Lab (que je coordonne) ont organisé la semaine passé à Luxembourg-Ville, juste après DHLU (Digital Humanities Luxembourg). C’est lors de la session de Lars Wieneke, chercheur au CVCE et cheville ouvrière de ce THATCamp, que ce code a été écrit. Il faut avoir installé l’extension python pattern du CLiPS.

# coding: utf-8
## Introduction

# we will use the graph library from pattern to visualize the relationships and the export module to save the graph to a webpage

from pattern.graph import Graph, export

# Now we use the great Pattern library from the CLiPS research center http://www.clips.ua.ac.be/pages/pattern
from pattern.web import Twitter
twit = Twitter()

recherche = raw_input(‘Quel est le terme recherché? ‘)
recherche = str(recherche)

results = twit.search(recherche, count = 1500) # the search method returns a list of 1500 entries

g = Graph()

authors = [] # this creates an empty list that we will use to create a list of authors

for item in results:
if item.author not in authors: # if the current author hasn’t been in the list
authors.append(item.author) # we will add him

# we will add every author as a node to the graph
for a in authors:
g.add_node(a)

# if the Twitter message is a re-tweet we will create an edge (think of it as a connection) between the original author and the author of the re-tweet
for item in results:
if item.description[:2]==”RT”:
g.add_edge(item.author, item.description.split(“:”)[0][4:])

# export saves the graph g to the filename “twitterAnalysis” and add the name of your research
export(g, “twitterAnalysis-{0}”.format(recherche), directed=True)


Imprimer ce billet Imprimer ce billet

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <embed style="" type="" id="" height="" width="" src="" object="" allowfullscreen="" allowscriptaccess="" cachebusting="" bgcolor="" quality="" flashvars=""> <iframe width="" height="" frameborder="" scrolling="" marginheight="" marginwidth="" src=""> <object style="" height="" width="" param="" embed=""> <param name="" value="">