#! /usr/bin/env python3.1
import urllib.request
import http.cookiejar
import re
# **********************************************************
# Microsoft Framework 的に言うと、クッキーコンテナ
# **********************************************************
cj = http.cookiejar.MozillaCookieJar()
opener = urllib.request.build_opener(
urllib.request.HTTPCookieProcessor( cj )
)
# **********************************************************
# POST するデータ
# **********************************************************
values = {
'next_url' : '/home.pl',
'email' : 'メールアドレス',
'password' : 'パスワード'
}
str_data = urllib.parse.urlencode(values)
# **********************************************************
# mixi ログイン
# ※ cookiejar を設定した opener で読みだす
# **********************************************************
try:
opener.addheaders.append(('Content-Length', str(len(str_data)) ))
response = opener.open(
"https://mixi.jp/login.pl?from=login1",
data=str_data
)
except urllib.error.URLError as e:
print(e)
exit()
# **********************************************************
# サーバーからの http ヘッダ
# **********************************************************
print( response.info() )
# **********************************************************
# mixi ボイス 画面
# ※ cookiejar を設定した opener で読みだす
# **********************************************************
opener = urllib.request.build_opener(
urllib.request.HTTPCookieProcessor( cj )
)
try:
response = opener.open("http://mixi.jp/recent_voice.pl")
except urllib.error.URLError as e:
print(e)
exit()
html = response.read()
# **********************************************************
# 内容
# **********************************************************
html_txt = html.decode("euc_jp")
print( html_txt ,file=open("mixi_voice.txt","wt") )
m = re.search('post_key" value="([^"]+)"', html_txt, re.MULTILINE)
post_key = m.group(1)
#print( post_key )
# **********************************************************
# POST するデータ
# **********************************************************
str_data = "body=" + urllib.parse.quote_plus("Pythonで投稿テスト", encoding="euc_jp")
str_data += "&post_key=" + post_key
# **********************************************************
# mixi ボイス投稿
# ※ cookiejar を設定した opener で読みだす
# **********************************************************
opener = urllib.request.build_opener(
urllib.request.HTTPCookieProcessor( cj )
)
opener.addheaders.append(('Content-Length', str(len(str_data)) ))
opener.addheaders.append(('User-agent', 'Mozilla/5.0' ))
print( opener.addheaders )
try:
response = opener.open(
"http://mixi.jp/add_voice.pl",
data=str_data,
timeout=5
)
except urllib.error.URLError as e:
print(e)
exit()