urllib (python3) を使用した簡単なデモ:
#!/usr/bin/env python3
#-*- coding:utf-8 -*-
import os.path
import urllib.request
from urllib.parse import urlencode
from http.cookiejar import CookieJar,MozillaCookieJar
cj = MozillaCookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
urllib.request.install_opener(opener)
cookie_file=os.path.abspath('./cookies.txt')
def load_cookies(cj,cookie_file):
cj.load(cookie_file)
def save_cookies(cj,cookie_file):
cj.save(cookie_file,ignore_discard=True,ignore_expires=True)
def dorequest(url,cj=None,data=None,timeout=10,encoding='UTF-8'):
data = urlencode(data).encode(encoding) if data else None
request = urllib.request.Request(url)
request.add_header('User-Agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')
f = urllib.request.urlopen(request,data,timeout=timeout)
return f.read()
def dopost(url,cj=None,data=None,timeout=10,encoding='UTF-8'):
body = dorequest(url,cj,data,timeout,encoding)
return body.decode(encoding)
リダイレクトが発生している場合は、ヘッダーを確認する必要があります (30x)。