コード例 #1
0
ファイル: test.py プロジェクト: fengkaicnic/pyml
                     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)
コード例 #2
0
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)
コード例 #3
0
ファイル: pop3email.py プロジェクト: devilWwj/pyml
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
コード例 #4
0
ファイル: email_classify.py プロジェクト: fengkaicnic/pyml
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)