]>
gitweb.pimeys.fr Git - dtc.git/blob - dtc.py
14 """Récupère un curseur connecté à la base dtc"""
15 con
= psycopg2
.connect(database
="dtc")
16 cur
= con
.cursor(cursor_factory
=psycopg2
.extras
.DictCursor
)
21 """Insère une quote dans la base"""
23 print "INSERTing %s" % quote
["id"]
24 con
, cur
= getcursor()
25 cur
.execute("INSERT INTO quotes (id, date, quote) VALUES (%(id)s, %(date)s, %(quote)s);",
27 cur
.execute("COMMIT;")
30 """Récupère l'id de la dernière quote enregistrée"""
31 con
, cur
= getcursor()
32 cur
.execute("SELECT MAX(id) AS maxid FROM quotes;")
33 return cur
.fetchone()["maxid"]
35 def get_quotes(first
, last
=None):
36 """Récupère des quotes dans la base."""
39 add
= "AND id <= %(last)s"
40 con
, cur
= getcursor()
41 req
= "SELECT * FROM quotes WHERE id >= %(first)s " + add
+ ";"
42 cur
.execute(req
, {"first" : first
, "last" : last
})
44 l
= [dict(q
) for q
in l
]
47 d
["date"] = d
["date"].strftime("%F %T")
51 """Affiche des quotes"""
52 t
= ("\n" + "_"*80 + "\n").join(["%(id)s (%(date)s)\n%(quote)s" % q
for q
in liste
])
55 if __name__
== "__main__":
57 if sys
.argv
[1] in ["fetch", "update", "pull"]:
58 l
= fetch_dtc
.getquotes()
59 last
= last_inserted()
64 except psycopg2
.IntegrityError
as err
:
65 print "Bim %s\nl,last_inserted = %s, %s" % (err
, l
, last_inserted
)
69 id2
= int(sys
.argv
[2])
71 if sys
.argv
[2] in ["+", "_"]:
74 print "Le deuxième paramètre doit être un entier ou '+'"
77 quotes
= get_quotes(first
=id, last
=id2
)
78 if "--json" in sys
.argv
:
79 print json
.dumps(quotes
)