01.
02.
03.
import
urllib.request
04.
import
http.cookiejar
05.
import
re
06.
07.
08.
09.
10.
cj
=
http.cookiejar.MozillaCookieJar()
11.
opener
=
urllib.request.build_opener(
12.
urllib.request.HTTPCookieProcessor( cj )
13.
)
14.
15.
16.
17.
18.
values
=
{
19.
'next_url'
:
'/home.pl'
,
20.
'email'
:
'メールアドレス'
,
21.
'password'
:
'パスワード'
22.
}
23.
str_data
=
urllib.parse.urlencode(values)
24.
25.
26.
27.
28.
29.
try
:
30.
opener.addheaders.append((
'Content-Length'
, str(len(str_data)) ))
31.
response
=
opener.open(
32.
"https://mixi.jp/login.pl?from=login1"
,
33.
data
=
str_data
34.
)
35.
except
urllib.error.URLError as e:
36.
print
(e)
37.
exit()
38.
39.
40.
41.
42.
print
( response.info() )
43.
44.
45.
46.
47.
48.
49.
opener
=
urllib.request.build_opener(
50.
urllib.request.HTTPCookieProcessor( cj )
51.
)
52.
try
:
53.
response
=
opener.open(
"http://mixi.jp/recent_voice.pl"
)
54.
except
urllib.error.URLError as e:
55.
print
(e)
56.
exit()
57.
58.
html
=
response.read()
59.
60.
61.
62.
63.
html_txt
=
html.decode(
"euc_jp"
)
64.
print
( html_txt ,file
=
open(
"mixi_voice.txt"
,
"wt"
) )
65.
66.
m
=
re.search(
'post_key" value="([^"]+)"'
, html_txt, re.MULTILINE)
67.
post_key
=
m.group(
1
)
68.
69.
70.
71.
72.
73.
str_data
=
"body="
+
urllib.parse.quote_plus(
"Pythonで投稿テスト"
, encoding
=
"euc_jp"
)
74.
str_data
+
=
"&post_key="
+
post_key
75.
76.
77.
78.
79.
80.
opener
=
urllib.request.build_opener(
81.
urllib.request.HTTPCookieProcessor( cj )
82.
)
83.
84.
opener.addheaders.append((
'Content-Length'
, str(len(str_data)) ))
85.
opener.addheaders.append((
'User-agent'
,
'Mozilla/5.0'
))
86.
print
( opener.addheaders )
87.
88.
try
:
89.
response
=
opener.open(
90.
"http://mixi.jp/add_voice.pl"
,
91.
data
=
str_data,
92.
timeout
=
5
93.
)
94.
except
urllib.error.URLError as e:
95.
print
(e)
96.
exit()