私は私の仕事場でpythonからjiraにアクセスしようとしています。私がしようとする基本的な操作は、jiraの問題をフェッチ/作成/更新することです。私はテンプレートコードをオンラインで見て、それを使用しようとしていますが、運はありません。私はすでにpipを使ってjira apiをインストールしました。PythonからJIRAにアクセス
pip install jira
#!/usr/bin/python
from jira import JIRA
options = {'server' : 'https://jira.mycompany.com/rest/api/2'}
jira = JIRA(options)
projects = jira.projects()
print (projects)
そして、これがその出力です:
Traceback (most recent call last):
File "JiraTest.py", line 7, in <module>
jira = JIRA(options)
File "C:\Anaconda3\lib\site-packages\jira\client.py", line 317, in __init__
si = self.server_info()
File "C:\Anaconda3\lib\site-packages\jira\client.py", line 1771, in server_info
j = self._get_json('serverInfo')
File "C:\Anaconda3\lib\site-packages\jira\client.py", line 2172, in _get_json
r = self._session.get(url, params=params)
File "C:\Anaconda3\lib\site-packages\jira\resilientsession.py", line 150, in get
return self.__verb('GET', url, **kwargs)
File "C:\Anaconda3\lib\site-packages\jira\resilientsession.py", line 146, in __verb
raise_on_error(response, verb=verb, **kwargs)
File "C:\Anaconda3\lib\site-packages\jira\resilientsession.py", line 56, in raise_on_error
r.status_code, error, r.url, request=request, response=r, **kwargs)
jira.exceptions.JIRAError: JiraError HTTP 404 url:https://jira.mycompany.com/rest/api/2/rest/api/2/serverInfo
response headers = {'Date': 'Sat, 29 Jul 2017 22:42:31 GMT', 'Content-Length': '0', 'Server': 'Apache-Coyote/1.1'}
response text =
` 私は私がここで何か間違ったことをやっている知っているので、これは私がお願いしたいものです:決定するためにどのように
- あなたの職場でのJIRAサーバー。
- jira管理者は、残りのAPI呼び出しを有効にする必要がありますか、またはadminログインから何か他のものを有効にする必要がありますか?コードから無効になっているかどうかを判断する方法はありますか?
- pipからjiraをインストールする以外にインストールが必要なことはありますか?
- ログイン資格情報を処理する方法。あなたの.pyファイルにユーザ名/パスワードを指定するよりも良い方法があると確信しています。誰かがその情報を見つける場所を教えてくれますか?
ありがとうございます。
「運がない」とはどういう意味ですか?あなたは例外を受け取りますか?もしそうなら、トレースバックを見せてください。現在、あなたが示したコードで何が起こっているのかは不明です(そして、あなたの会社のJIRA設定をテストすることはできません)。 – Blckknght
@Blckknght - 投稿した内容を更新しました。私は完全に何かを間違っていると感じたり、ジラにアクセスしようとする際に何らかのステップを逃しています。 – Singo
私はJIRAのエキスパートではありません(私はバグを報告するために使ってきましたが、APIはプログラミングしていませんでした)。しかし、エラーメッセージのURLの重複部分で判断すると、 '/ rest/api/2'の部分を' options'ディクテーションに入れます。 – Blckknght