|
|
|
@ -2,6 +2,7 @@ import sqlite3
|
|
|
|
import sys
|
|
|
|
import sys
|
|
|
|
import os
|
|
|
|
import os
|
|
|
|
import re
|
|
|
|
import re
|
|
|
|
|
|
|
|
import copy
|
|
|
|
|
|
|
|
|
|
|
|
if len(sys.argv) != 3:
|
|
|
|
if len(sys.argv) != 3:
|
|
|
|
print "Usage: cedict2sqlite [hanzi-text or file] [sqlite-file.sqlite]"
|
|
|
|
print "Usage: cedict2sqlite [hanzi-text or file] [sqlite-file.sqlite]"
|
|
|
|
@ -30,15 +31,20 @@ while hzwork:
|
|
|
|
print "\nhzwork still %s"%hzwork
|
|
|
|
print "\nhzwork still %s"%hzwork
|
|
|
|
tmpstr = ""
|
|
|
|
tmpstr = ""
|
|
|
|
lastres = ""
|
|
|
|
lastres = ""
|
|
|
|
for c in hzwork:
|
|
|
|
|
|
|
|
|
|
|
|
for c in copy.deepcopy(hzwork):
|
|
|
|
tmpstr += hzwork[0]
|
|
|
|
tmpstr += hzwork[0]
|
|
|
|
|
|
|
|
|
|
|
|
print "checking for %s (%s)"%(tmpstr,tmpstr.__repr__())
|
|
|
|
print "checking for %s (%s)"%(tmpstr,tmpstr.__repr__())
|
|
|
|
res = slconn.execute('SELECT pinyin FROM entries WHERE simplified="%s"'%tmpstr).fetchall()
|
|
|
|
res = slconn.execute('SELECT pinyin FROM entries WHERE simplified="%s" OR traditional="%s";'%(tmpstr,tmpstr)).fetchall()
|
|
|
|
if res != []: # sequence of chars not found, using last result
|
|
|
|
print "res are: %s"%res
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# now for the result work...
|
|
|
|
|
|
|
|
if res: # sequence of chars not found, using last result
|
|
|
|
lastres = res[0][0]
|
|
|
|
lastres = res[0][0]
|
|
|
|
hzwork.pop(0)
|
|
|
|
hzwork.pop(0)
|
|
|
|
print "found and consumed %s"%res[0][0]
|
|
|
|
print "found and consumed %s"%res[0][0]
|
|
|
|
elif res == [] and not lastres: # first char not found, using fallback barf
|
|
|
|
elif not res and not lastres: # first char not found, using fallback barf
|
|
|
|
lastres = '[%s]'%tmpstr
|
|
|
|
lastres = '[%s]'%tmpstr
|
|
|
|
hzwork.pop(0)
|
|
|
|
hzwork.pop(0)
|
|
|
|
print "%s not found, adding raw and breaking"%tmpstr
|
|
|
|
print "%s not found, adding raw and breaking"%tmpstr
|
|
|
|
@ -46,6 +52,7 @@ while hzwork:
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
print "got empty result, breaking"
|
|
|
|
print "got empty result, breaking"
|
|
|
|
break
|
|
|
|
break
|
|
|
|
|
|
|
|
|
|
|
|
finres += lastres+" "
|
|
|
|
finres += lastres+" "
|
|
|
|
print "appending and deleting lastres %s, finres now: %s"%(lastres,finres)
|
|
|
|
print "appending and deleting lastres %s, finres now: %s"%(lastres,finres)
|
|
|
|
|
|
|
|
|
|
|
|
|