是否可以将二进制文件与Python一起发布到usenet?
我正在尝试使用python附带的nntplib向usenet发布一些帖子。但是,我不知道如何使用.post方法发布二进制文件 我可以发布纯文本文件,但不能发布二进制文件。有什么想法吗 --编辑-- 多亏了阿德里安在下面的评论,我才朝着我的目标迈出了一步 现在,我使用电子邮件库生成多部分消息,并将二进制文件附加到消息中。但是,我似乎不知道如何将该消息直接传递给nttplib post方法是否可以将二进制文件与Python一起发布到usenet?,python,nntp,Python,Nntp,我正在尝试使用python附带的nntplib向usenet发布一些帖子。但是,我不知道如何使用.post方法发布二进制文件 我可以发布纯文本文件,但不能发布二进制文件。有什么想法吗 --编辑-- 多亏了阿德里安在下面的评论,我才朝着我的目标迈出了一步 现在,我使用电子邮件库生成多部分消息,并将二进制文件附加到消息中。但是,我似乎不知道如何将该消息直接传递给nttplib post方法 我必须先写一个临时文件,然后将它读回nttplib方法。必须有一种方法在内存中完成这一切……有什么建议吗?您必
我必须先写一个临时文件,然后将它读回nttplib方法。必须有一种方法在内存中完成这一切……有什么建议吗?您必须对您的帖子进行MIME编码:NNTP新闻组中的二进制帖子就像带有附件的邮件 文件必须以ASCII编码,通常使用
base64
编码,然后将编码文件打包到多部分MIME消息中并发布
看看这个模块:它实现了您想要的一切
我鼓励您阅读定义NNTP协议的官方标准
关于问题的第二部分:
用于从字符串生成假文件对象(nntplib的post()
方法接受打开的文件对象)。
email.Message
对象有一个as_string()
方法以普通字符串形式检索邮件内容。请在单独的问题中发布新问题。。。(仍然看一下对我答案的编辑)我认为这仍然是同一个原始问题的一部分,即如何将二进制文件发布到usenet。