comparison wikisqldumpToSQL.py @ 0:bca61e893fcc

first checkin of MPIWGWeb r2 branch from CVS into mercurial
author casties
date Thu, 10 Jan 2013 17:52:13 +0100
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:bca61e893fcc
1 import psycopg
2
3 o = psycopg.connect('dbname=authorities user=dwinter password=3333',serialize=0)
4 c = o.cursor()
5
6 import re
7
8 def quote(str):
9 str=str.replace("'","\\\'")
10 str=str.replace("@","\\\'")
11 return str#.encode('utf-8')
12
13 filename="/Users/dwinter/Desktop/dewiki-20060908-categorylinks.sql"
14 txt=file(filename).read()
15 datas=re.findall("(VALUES.*)",txt)
16 for data in datas:
17 print data
18 txt=data.replace("VALUES","")
19 data=re.findall("\((.*?)\)",txt)
20 print len(data)
21 for result in data:
22 result=result.replace("\\\'","@")
23
24 new=re.findall("\'(.*?)\'",result)
25 if len(new)>1:
26 if (len(new)>0) and ((new[0]=='Mann') or (new[0]=="Frau")):
27 try:
28 firstname=new[1].split(",")[1].lstrip()
29 except:
30 firstname=""
31 lastname=new[1].split(",")[0].lstrip()
32
33 print "INSERT into persons (firstname,lastname) VALUES ('%s','%s')"% (quote(firstname),quote(lastname))
34 c.execute("INSERT into persons (firstname,lastname) VALUES ('%s','%s')"% (quote(firstname),quote(lastname)))
35 c.commit()