script/iri_tweet/export_twitter_alchemy.py
changeset 11 54d7f1486ac4
parent 9 bb44692e09ee
--- a/script/iri_tweet/export_twitter_alchemy.py	Wed Jan 12 13:25:01 2011 +0100
+++ b/script/iri_tweet/export_twitter_alchemy.py	Tue Jan 18 10:08:03 2011 +0100
@@ -5,17 +5,17 @@
 from models import *
 from optparse import OptionParser
 from sqlalchemy import Table, Column, Integer, BigInteger, String, MetaData, \
-    ForeignKey, create_engine
+    ForeignKey
 from sqlalchemy.orm import sessionmaker, mapper
 from sqlalchemy.sql import select
 import datetime
-import time
 import email.utils
 import logging
 import os
 import os.path
 import re
 import sys
+import time
 import uuid
 
 #class TweetExclude(object):
@@ -29,9 +29,7 @@
     ts = email.utils.parsedate_tz(date_str)
     return datetime.datetime(*ts[0:7])
 
-
-if __name__ == "__main__" :
-
+def get_options():
     parser = OptionParser()
     parser.add_option("-f", "--file", dest="filename",
                       help="write export to file", metavar="FILE", default="project_enmi.ldt")
@@ -63,36 +61,24 @@
                       help="Replace tweet ensemble", metavar="REPLACE", default=False)
     parser.add_option("-l", "--log", dest="logfile",
                       help="log to file", metavar="LOG", default="stderr")
-    parser.add_option("-v", dest="verbose", action="count",
-                      help="verbose", metavar="VERBOSE", default=0)
-    parser.add_option("-q", dest="quiet", action="count",
-                      help="quiet", metavar="QUIET", default=0)
-    parser.add_option("-L", dest="listconf", 
-                      help="file containing the list of file to process", metavar="LIST", default=0)
-
+    
+    set_logging_options(parser)
 
     
-    (options, args) = parser.parse_args()
-    
-    logging_config = {}
-    
-    if options.logfile == "stdout":
-        logging_config["stream"] = sys.stdout
-    elif options.logfile == "stderr":
-        logging_config["stream"] = sys.stderr
-    else:
-        logging_config["filename"] = options.logfile
+    return parser.parse_args()
+
+
+if __name__ == "__main__" :
 
-    logging_config["level"] = max(logging.NOTSET, min(logging.CRITICAL, logging.WARNING - 10 * options.verbose + 10 * options.quiet))
-    
-    logging.basicConfig(**logging_config)
-    
+    (options, args) = get_options()
+        
+    set_logging(options)
+        
     logging.debug("OPTIONS : " + repr(options))
 
-        
-    engine = create_engine('sqlite:///'+options.database, echo=((options.verbose-options.quiet)>0))
+    engine, metadata = setup_database('sqlite:///'+options.database, echo=((options.verbose-options.quiet)>0), create_all = False)        
+    
     Session = sessionmaker()
-
     conn = engine.connect()
     try :
         session = Session(bind=conn)