基本脚本,它向自己发送一封包含从文件文件夹中随机选择的内容的邮件


Basic script that sends yourself a mail containing the content randomly picked from a folder of files

我知道如何编写一些代码,我想我可能知道足够的知识来完成以下操作。我在谷歌上搜索了一些,但找不到足够的信息来开始。以下是我要做的:

我为我观看的可汗学院视频写了一些笔记。我把它们写在nvALT中,并存储在Dropbox中,感谢Merlin Mann的想法,我把它们分类如下:Econx——title。所以,我想让我的小程序做什么:

每天早上给我发一封邮件,其中包含从我的笔记文件夹中随机选择的.txt文件的内容。取决于什么更容易,它将是经济学笔记,所以它必须经过过滤,只从以"Econx"开头的笔记中选择。还是只做一个单独的文件夹,只写经济笔记更容易?

提前谢谢。

这个问题涉及到与操作系统和互联网的交互,这对于没有太多编程经验的人来说是一个相当大的问题,但如果你愿意深入研究,这可能是一个值得学习的项目。

该任务有两个部分需要分别处理。你必须编写一个程序来创建和发送电子邮件,然后你需要让你的操作系统安排程序每天早上运行(这不是你可以简单地在程序代码中完成的事情)

在您列出的语言中,Python是唯一一种真正可以用来在计算机上打开文件夹并将其中一个文件的内容作为电子邮件发送的语言。该文件将是相关的:

http://docs.python.org/2/library/email-examples.html

您可能还想看看Python的操作系统模块,它列出了您目录中的文件,并打开了一个文件,这样您就可以将其内容用于电子邮件正文。特别是,方法os.listdir()用于获取文件夹中所有文件的列表。一旦你有了这个列表,你就可以使用Python的随机模块来获得一个随机整数,你可以使用这个数字从目录中挑选文件。内置方法open()应该足以打开文件。出于您描述的目的,简单地将目录名称硬编码到代码中是有意义的。

第二个问题是调度,这取决于您的操作系统。

如果您使用Mac或Linux,则需要在crontab中添加一行。这篇文章解释了如何使用crontab。

http://www.thegeekstuff.com/2009/06/15-practical-crontab-examples/

这篇文章给了你一个在crontab中添加一行的例子:

stackoverflow.com/questions/87860/how-to-create-cronjob-using-bash

如果你在Windows上,本页的文档解释了如何安排重复任务:

windows.microsoft.com/en-US/windows7/schedule-a-task

(很抱歉,最后一个网址不是链接。我没有足够的堆栈溢出因果报应,无法在一篇文章中放置两个以上的链接。)