您是否知道有关使用更新站点的规则的任何文档?我已经管理了我们公司更新站点的最后两年半,这些是我必须解决的问题:
所以问题是:我们应该使用多少个更新站点,如果数量超过1,我如何最大限度地减少维护更新站点的工作?
我很难确定文本电子邮件的正文是否为base64编码.如果它然后使用这行代码; 利用jython 2.2.1
dirty=base64.decodestring(dirty)
Run Code Online (Sandbox Code Playgroud)
否则继续正常.
这是我的代码.哪些代码行允许我从电子邮件中提取此内容:
"Content-Transfer-Encoding:base64"
import email, email.Message
import base64
def _get_email_body(self):
try:
parts=self._email.get_payload()
check=parts[0].get_content_type()
if check=="text/plain":
part=parts[0].get_payload()
enc = part[0]['Content-Transfer-Encoding']
if enc == "base64":
dirty=base64.decodestring(dirty)
elif check=="multipart/alternative":
part=parts[0].get_payload()
enc = part[0]['Content-Transfer-Encoding']
if part[0].get_content_type()=="text/plain":
dirty=part[0].get_payload()
if enc == "base64":
dirty=base64.decodestring(dirty)
else:
return "cannot obtain the body of the email"
else:
return "cannot obtain the body of the email"
return dirty
except:
raise
Run Code Online (Sandbox Code Playgroud)
好了,这个代码现在可以使用!谢谢大家
当然有某种抽象可以实现这一点吗?
这基本上就是命令
cmd = self._ghostscriptPath + 'gswin32c -q -dNOPAUSE -dBATCH -sDEVICE=tiffg4
-r196X204 -sPAPERSIZE=a4 -sOutputFile="' + tifDest + " " + pdfSource + '"'
os.popen(cmd)
Run Code Online (Sandbox Code Playgroud)
这种方式看起来真的很脏,必须有一些pythonic方式
self.logger.info(msg)
popinstance=poplib.POP3(self.account[0])
self.logger.info(popinstance.getwelcome())
popinstance.user(self.account[1])
popinstance.pass_(self.account[2])
try:
(numMsgs, totalSize)=popinstance.stat()
self.logger.info("POP contains " + str(numMsgs) + " emails")
for thisNum in xrange(1, numMsgs + 1):
try:
(server_msg, body, octets)=popinstance.retr(thisNum)
except:
self.logger.error("Could not download email")
raise
text="\n".join(body)
mesg=StringIO.StringIO(text)
msg=rfc822.Message(mesg)
MessageID=email.Utils.parseaddr(msg["Message-ID"])[1]
self.logger.info("downloading email " + MessageID)
emailpath=os.path.join(self._emailpath + self._inboxfolder + "\\" + self._sanitize_string(MessageID + ".eml"))
emailpath=self._replace_whitespace(emailpath)
try:
self._dual_dump(text,emailpath)
except:
pass
self.logger.info(popinstance.dele(thisNum))
finally:
self.logger.info(popinstance.quit())
Run Code Online (Sandbox Code Playgroud)
(server_msg,body,octets)= popinstance.retr(thisNum)在电子邮件包含中文字符时在电子邮件正文中返回= 20.
我该如何处理?
电子邮件的原始文本:
主题:(提单:4363-0192-809.015)SI FOR 15680XXXX436
= 20
亲
= 20
SI封闭
PLS向我们发送BL草案和债务说明
= 20
TKS
= 20
肉豆蔻酸 …
python ×3
email ×2
jython ×2
asianfonts ×1
automation ×1
branch ×1
eclipse ×1
encoding ×1
fonts ×1
ghostscript ×1
git ×1
mozart ×1
oz ×1
svn ×1
windows ×1