Add error handling to filler.py, allowing empty databases to be filled
Initial (non-functional) check-in of the CSV to sqlite3 converter
This commit is contained in:
parent
fd6089acac
commit
284e64daee
21
csvdb.py
Executable file
21
csvdb.py
Executable file
|
@ -0,0 +1,21 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import sqlite3, csv
|
||||
|
||||
try:
|
||||
infile = open('tweets.csv')
|
||||
except IOError:
|
||||
print "Please make sure that the tweets.csv from the Twitter download is located in this directory."
|
||||
|
||||
input = csv.reader(infile)
|
||||
|
||||
conn = sqlite3.connect('Database.db')
|
||||
cur = conn.cursor()
|
||||
|
||||
try:
|
||||
cur.execute("CREATE TABLE tweets(`tweet_id` INTEGER NOT NULL, `in_reply_to_status_id` TEXT, `in_reply_to_user_id` TEXT, `timestamp` TEXT, `source` TEXT, `text` TEXT, `retweeted_status_id` TEXT, `retweeted_status_user_id` TEXT, `retweeted_status_timestamp` TEXT, `expanded_urls` TEXT, PRIMARY KEY(tweet_id));")
|
||||
except sqlite3.OperationalError:
|
||||
print "Database.db already exists. Please delete it before trying to create a new one."
|
||||
|
||||
for row in input[1:]:
|
||||
cur.execute("INSERT INTO tweets VALUES(?,?,?,?,?,?,?,?,?,?);",row)
|
11
filler.py
11
filler.py
|
@ -16,10 +16,15 @@ database_filename = "Database.db"
|
|||
sql_conn = sqlite3.connect(database_filename)
|
||||
cur = sql_conn.cursor()
|
||||
|
||||
cur.execute("SELECT max(tweet_id) FROM tweets")
|
||||
savepoint = int(cur.fetchone()[0])
|
||||
try:
|
||||
cur.execute("SELECT max(tweet_id) FROM tweets")
|
||||
except sqlite3.OperationalError:
|
||||
print "Please run ./makedb.py or ./csvdb.py before trying to populate the database."
|
||||
|
||||
print savepoint
|
||||
try:
|
||||
savepoint = int(cur.fetchone()[0])
|
||||
except:
|
||||
savepoint = 0
|
||||
|
||||
auth = tweepy.OAuthHandler(cke, cse)
|
||||
auth.set_access_token(ato, ase)
|
||||
|
|
Loading…
Reference in a new issue