time.mktime(tuple)とすると、ローカルタイムで解釈されるので、9時間ずれる。。。 色々ググって
calendar.timegm(tuple)とするといいということがわかった。これはGMTで解釈してくれるので大丈夫、とのこと。 しかし、なんだかなあ。。Javaのように、epochからのミリ秒表現をコアにするほうが合理的だと おもうのだが。
技術系の備忘録.基本的に自分だけのためのものなので,詳しく書きません.検索でいらした方、すみません.
time.mktime(tuple)とすると、ローカルタイムで解釈されるので、9時間ずれる。。。 色々ググって
calendar.timegm(tuple)とするといいということがわかった。これはGMTで解釈してくれるので大丈夫、とのこと。 しかし、なんだかなあ。。Javaのように、epochからのミリ秒表現をコアにするほうが合理的だと おもうのだが。
sudo route add 192.168.1.0/24 -interface vmnet8とかやればいい。 恒久的に変更するには、
sudo mkdir /Library/StartupItems/AddRouteここに二つファイルをつくる。
{
Description = \"Add static routing tables\";
Provides = (\"AddRoutes\");
Requires = (\"Network\");
OrderPreference = \"None\";
}
#!/bin/sh
. /etc/rc.common
StartService ()
{
ConsoleMessage "Adding Static Routing Tables"
sudo route add 192.168.1.0/24 -interface vmnet8
}
StopService ()
{
return 0
}
RestartService ()
{
return 0
}
RunService "$1"
これに実行権限を与えておく。
sudo chmod +x /Library/StartupItems/AddRoute/AddRoutes
# -*- coding: utf-8 -*-
import smtplib
from email.MIMEText import MIMEText
from email.Header import Header
from email.Utils import formatdate
import getpass
def create_message(from_addr, to_addr, subject, body, encoding):
msg = MIMEText(body, 'plain', encoding)
msg['Subject'] = Header(subject, encoding)
msg['From'] = from_addr
msg['To'] = to_addr
msg['Date'] = formatdate()
return msg
def send_via_gmail(from_addr, to_addr, msg, passwd):
s = smtplib.SMTP('smtp.gmail.com', 587)
s.ehlo()
s.starttls()
s.ehlo()
s.login(from_addr, passwd)
s.sendmail(from_addr, [to_addr], msg.as_string())
s.close()
if __name__ == '__main__':
from_addr = 'hoge@gmail.com'
to_addr = 'target@example.com'
passwd=getpass.getpass("password for %s:" % (from_addr))
msg = create_message(from_addr, to_addr, u'テスト', u'本文', 'ISO-2022-JP')
send_via_gmail(from_addr, to_addr, msg, passwd)