2011-11-12 3 views
2

私は、REST APIを使用してJIRAにログインするPythonスクリプトを作成しようとしています。これを行うには、ログインフォーム(ユーザ名とパスワードを使用)をJIRAサーバにPOSTし、取得されたCookieを格納する必要があります(ファイルのフィールドとして指定することが望ましい)。POSTでCookieをPythonで受け取るにはどうすればよいですか?

ここでログインドキュメントです: http://confluence.atlassian.com/display/JIRA042/JIRA+REST+API+(Alpha)+Tutorial#JIRARESTAPIAlphaTutorial-LoggingIn

これは作業curlコマンドは、私が欲しいものを正確に行うことです。

curl -c cookie_jar -H "Content-Type: application/json" -d '{"username" : "admin", "password" : "hunter2"}' http://localhost:8080/rest/auth/latest/session

がどのように私はPythonでこれを複製することができますか?好ましくは、余分なライブラリなしで。

+0

http://docs.python.org/library/urllib2.htmlを使用する必要があります – NullUserException

答えて

2

あなたはLWPCookieJar

import urllib, urllib2, cookielib 
url='http://localhost:8080/rest/auth/latest/session' 
post={"username" : "admin", "password" : "hunter2"} 
post_data=urllib.urlencode(post) 
cookie = cookielib.LWPCookieJar() 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie)) 
opener.open(url,post_data) 
cookie.save('cookie_filename', True) 
関連する問題