minor fix
This commit is contained in:
+5
-6
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python2
|
||||
# -*- coding: UTF-8 -*-
|
||||
# File: parser.py
|
||||
# Date: Mon Dec 22 09:45:35 2014 +0800
|
||||
# Date: Mon Dec 22 16:50:31 2014 +0800
|
||||
# Author: Yuxin Wu <[email protected]>
|
||||
|
||||
import sqlite3
|
||||
@@ -58,9 +58,8 @@ SELECT {} FROM message
|
||||
msg = WeChatMsg(row)
|
||||
if not WeChatMsg.filter_type(msg.type):
|
||||
self.msgs_by_talker[msg.talker].append(msg)
|
||||
self.msgs_by_talker = dict([
|
||||
(self.contacts[k], sorted(v, key=lambda x: x.createTime))
|
||||
for k, v in self.msgs_by_talker.iteritems()])
|
||||
self.msgs_by_talker = {self.contacts[k]: sorted(v, key=lambda x: x.createTime)
|
||||
for k, v in self.msgs_by_talker.iteritems()}
|
||||
for k, v in self.msgs_by_talker.iteritems():
|
||||
for msg in v:
|
||||
msg.talker_name = ensure_unicode(k)
|
||||
@@ -75,8 +74,8 @@ SELECT {} FROM message
|
||||
|
||||
def _parse_imginfo(self):
|
||||
imginfo_q = self.cc.execute("""SELECT msgSvrId, bigImgPath FROM ImgInfo2""")
|
||||
self.imginfo = dict([(k, v) for (k, v) in imginfo_q
|
||||
if not v.startswith('SERVERID://')])
|
||||
self.imginfo = {k: v for (k, v) in imginfo_q
|
||||
if not v.startswith('SERVERID://')}
|
||||
logger.info("Found {} big images records.".format(len(self.imginfo)))
|
||||
|
||||
def _find_msg_by_type(self, msgs=None):
|
||||
|
||||
+4
-5
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python2
|
||||
# -*- coding: UTF-8 -*-
|
||||
# File: render.py
|
||||
# Date: Mon Dec 22 09:49:12 2014 +0800
|
||||
# Date: Mon Dec 22 16:52:48 2014 +0800
|
||||
# Author: Yuxin Wu <[email protected]>
|
||||
|
||||
import os
|
||||
@@ -27,9 +27,8 @@ TEMPLATES_FILES = {TYPE_MSG: "TP_MSG",
|
||||
TYPE_SPEAK: "TP_SPEAK",
|
||||
TYPE_EMOJI: "TP_EMOJI",
|
||||
TYPE_LINK: "TP_MSG"}
|
||||
TEMPLATES = dict([(k, ensure_unicode(open(os.path.join(
|
||||
LIB_PATH, 'static/{}.html'.format(v))).read()))
|
||||
for k, v in TEMPLATES_FILES.iteritems()])
|
||||
TEMPLATES = {k: ensure_unicode(open(os.path.join(LIB_PATH, 'static/{}.html'.format(v))).read())
|
||||
for k, v in TEMPLATES_FILES.iteritems()}
|
||||
|
||||
class HTMLRender(object):
|
||||
def __init__(self, parser, res=None):
|
||||
@@ -108,7 +107,7 @@ class HTMLRender(object):
|
||||
else:
|
||||
group = None
|
||||
emoji_img, format = self.res.get_emoji(imgpath, group)
|
||||
assert emoji_img
|
||||
#assert emoji_img
|
||||
return template.format(sender_label=sender,
|
||||
emoji_format=format,
|
||||
emoji_img=emoji_img)
|
||||
|
||||
+5
-3
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python2
|
||||
# -*- coding: UTF-8 -*-
|
||||
# File: res.py
|
||||
# Date: Mon Dec 22 09:48:16 2014 +0800
|
||||
# Date: Mon Dec 22 16:52:56 2014 +0800
|
||||
# Author: Yuxin Wu <[email protected]>
|
||||
|
||||
import glob
|
||||
@@ -158,7 +158,9 @@ class Resource(object):
|
||||
# annimation
|
||||
candidates = [k for k in candidates if not re.match('.*_[0-9]+$', k)]
|
||||
# only one file is the gif in need, others are frames and cover
|
||||
assert len(candidates) == 1
|
||||
if len(candidates) == 0:
|
||||
# TODO stitch frames to gif
|
||||
return None, None
|
||||
if not candidates:
|
||||
return None, None
|
||||
fname = candidates[0]
|
||||
@@ -166,6 +168,6 @@ class Resource(object):
|
||||
|
||||
def get_internal_emoji(self, fname):
|
||||
f = os.path.join(INTERNAL_EMOJI_DIR, fname)
|
||||
return Resource.get_file_b64(fname), imghdr.what(fname)
|
||||
return Resource.get_file_b64(f), imghdr.what(f)
|
||||
|
||||
|
||||
|
||||
+5
-6
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python2
|
||||
# -*- coding: UTF-8 -*-
|
||||
# File: smiley.py
|
||||
# Date: Sun Dec 21 23:41:14 2014 +0800
|
||||
# Date: Mon Dec 22 16:50:15 2014 +0800
|
||||
# Author: Yuxin Wu <[email protected]>
|
||||
|
||||
import os
|
||||
@@ -29,17 +29,16 @@ class SmileyProvider(object):
|
||||
|
||||
# some extra smiley from javascript on wx.qq.com
|
||||
extra_smiley = json.load(open(TENCENT_EXTRASMILEY_FILE))
|
||||
extra_smiley = dict([(u'[' + k + u']', v) for k, v in
|
||||
extra_smiley.iteritems()])
|
||||
extra_smiley = {u'[' + k + u']': v for k, v in
|
||||
extra_smiley.iteritems()}
|
||||
self.tencent_smiley.update(extra_smiley)
|
||||
|
||||
# 1f35c -> "\ue340"
|
||||
#self.unicode_smiley_code = gUnicodeCodeMap
|
||||
|
||||
# u'\U0001f35c' -> "e340"
|
||||
self.unicode_smiley = dict([(unichr(int(k, 16)), hex(ord(v))[2:])
|
||||
for k, v in
|
||||
json.load(open(UNICODE_SMILEY_FILE)).iteritems()])
|
||||
self.unicode_smiley = {unichr(int(k, 16)): hex(ord(v))[2:] for k, v in
|
||||
json.load(open(UNICODE_SMILEY_FILE)).iteritems()}
|
||||
self.used_smiley_id = set()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user