この原則が Wordpress で機能するかどうかはわかりませんが、基本的な http 認証でコードを強化するには、次のことを行う必要があります。
import urllib2
import urllib
import base64
USERNAME="user"
PASSWORD="password"
url='http://www.mywordpressblog.com/wp-login.php'
req = urllib2.Request(url)
# create http header with base64 encoded user and password
base64string = base64.encodestring(
'%s:%s' % (USERNAME, PASSWORD))[:-1]
authheader = "Basic %s" % base64string
req.add_header("Authorization", authheader)
response =urllib2.urlopen(req)
the_page=response.read()
print the_page
詳細については、基本認証のチュートリアルを参照してください。
アップデート
以下に示すように、いずれかのブラウザーと urlencoded 資格情報をエミュレートPOST
して、ヘッダー フィールドを含むhttps 要求を発行する必要があります。User-Agent
import urllib2
import urllib
url='https://en.wordpress.com/wp-login.php'
headers = [
("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46 Safari/536.5")]
data = [
("log","YOURNAME"),
("pwd","YOURPASSWORD"),
("testcookie",1),
("submit","Log In"),
("redirect_to","http://wordpress.com/"),
("rememberme","forewer")]
req = urllib2.Request(url, urllib.urlencode(dict(data)), dict(headers))
response = urllib2.urlopen(req)
the_page=response.read()
print the_page