break print ''.join(com_lst) if com_lst: arg_map = {'name':''.join(com_lst)} else: arg_map = {'name': nick} rst = sales_solr.sales_search(arg_map, page_index, countofpage, solr_ip_port) print rst lines = [] lines.append(subject.strip()) lines.append(arg_map['name'].strip()) lines.append(str(rst[0])) if rst[0]: total += 1 num += 1 result = parse_eml(msg) # pdb.set_trace() lines.append(result.get(u'联系人', '').strip()) lines.append(result.get(u'手机', '').strip()) lines.append(result.get(u'座机', '').strip()) lines.append(result.get(u'地址', '').strip()) lines.append(result.get('email', '').strip()) linecsv.append(','.join(lines)) # print '*****************************************' except: pass print total print num with open('d:/naren/test.csv', 'wb') as file: file.writelines('\n'.join(linecsv).encode('utf8')) emlutils.write_table(linecsv)
lst = os.listdir(path) for pth in lst: name = '' namefg = True try: name = pth.decode('gb2312').encode('utf-8') except UnicodeDecodeError: name = pth for word in filter_words: if word in name: nouselst.append(name) namefg = False break if namefg: usedlst.append(name) # if filter_email(name): # usedlst.append(name) # else: # nouselst.append(name) print '============================used name:==============================' for name in usedlst: print name parse_eml(path + '/' + name) print len(usedlst) print '============================noused name:============================' for name in nouselst: print name print len(nouselst)
def handle_eml(msg_content, folder_path, user, index): # fp = codecs.open(path, 'r', encoding='gbk') msg = email.message_from_string(msg_content) subject = msg.get('Subject') subject = decode_subject(subject) if subject == u'应聘检验员': pdb.set_trace() fmail = msg.get('From') from_mail = utils.parseaddr(msg.get('From'))[1] content = parseutils.get_mail_content(msg) if 'gb2312' in from_mail: emailq = emailp.search(content) if emailq: from_mail = emailq.group(0) else: from_mail = '' # nick = utils.parseaddr(msg.get('From'))[0] nick = '' if fmail: nick = fmail.split(' ')[0] mailtm = msg.get('date') flag, inbox_time, name, uuid = generate_name(msg, folder_path) if flag == 0: #如果是正常邮件的话则走这个过程 if os.path.isfile(name): return 1 else: rst = parseutils.generate_table_data(subject, nick) lines = [] lines.append(subject.strip()) lines.append(rst[1].replace('"', '')) lines.append(rst[0]) result = parse_eml(msg, content) lines.append(result.get(u'联系人', '').strip()) lines.append(result.get(u'手机', '').strip()) lines.append(result.get(u'座机', '').strip()) lines.append(result.get(u'地址', '').strip()) lines.append(from_mail.strip().replace('"', '')) lines.append(user.strip()) lines.append(content) lines.append(int(time.time())) lines.append(uuid) lines.append(name[len(pth):]) lines.append(inbox_time) # parseutils.write_table([','.join(lines)]) parseutils.write_table([lines], logger) write_mail(name, msg_content) return result else: #如果是垃圾邮件或者错误邮件的话,就走这个流程 result = 'spam' if os.path.isfile(name): return name if flag == 1: result = parse_eml(msg, content, True) lines = [] lines.append(subject.strip()) lines.append(result.get('bugemail', '').strip().replace('"', '')) lines.append(user.strip()) lines.append(int(time.time())) lines.append(uuid) lines.append(name[len(pth):]) lines.append(inbox_time) parseutils.write_error_mail([lines], logger) print decode_header(subject)[0][0].replace(' ', '') write_mail(name, msg_content) return result
for pth in lst: name = '' namefg = True try: name = pth.decode('gb2312').encode('utf-8') except UnicodeDecodeError: name = pth for word in filter_words: if word in name: nouselst.append(name) namefg = False break if namefg: usedlst.append(name) # if filter_email(name): # usedlst.append(name) # else: # nouselst.append(name) print '============================used name:==============================' for name in usedlst: print name parse_eml(path + '/' + name) print len(usedlst) print '============================noused name:============================' for name in nouselst: print name print len(nouselst)