回答編集履歴

2

環境変数取得関数の一本化に伴う例文の消去

2020/07/21 02:38

投稿

member1234
member1234

スコア1

test CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  print("環境変数から" + envname + "を取得できませんでした。※登録しておくと今後入力が無くて便利です。")
32
32
 
33
- result = input( envname + "を入力してください。例[https://xxxx.backlog.jp] >>>")
33
+ result = input( envname + "を入力してください。 >>>")
34
34
 
35
35
  else:
36
36
 

1

環境変数取得関数の一本化

2020/07/21 02:38

投稿

member1234
member1234

スコア1

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  良い方法があればご教示いただけますでしょうか。
4
4
 
5
- ```
5
+ ```python
6
6
 
7
7
  import pathlib
8
8
 
@@ -18,39 +18,23 @@
18
18
 
19
19
  ListFile = pathlib.Path('.\BacklogTeamsList.txt') # 出力先ファイル
20
20
 
21
+ mdFile = pathlib.Path('.\BacklogTeamsList.md') # 出力先ファイル
21
22
 
22
23
 
23
- # 環境変数からBACKLOG_URLを取得、なければ入力を求め一時利用
24
24
 
25
- def getBACKLOG_URL():
25
+ # 環境変数取得、なければ入力を求め一時利用
26
26
 
27
- if os.getenv('BACKLOG_URL')==None:
27
+ def getenvfunction(envname):
28
28
 
29
- print('環境変数からBACKLOG_URLを確認できませんでした。※登録しておくと今後入力が無くて便利です。')
29
+ if os.getenv(envname)==None:
30
30
 
31
+ print("環境変数から" + envname + "を取得できませんでした。※登録しておくと今後入力が無くて便利です。")
32
+
31
- result = input("BACKLOG_URLを入力してください。例[https://xxxx.backlog.jp] >>>")
33
+ result = input( envname + "を入力してください。例[https://xxxx.backlog.jp] >>>")
32
34
 
33
35
  else:
34
36
 
35
- result = os.getenv('BACKLOG_URL')
37
+ result = os.getenv(envname)
36
-
37
- return result
38
-
39
-
40
-
41
- # 環境変数からBACKLOG_API_KEYを取得、なければ入力を求め一時利用
42
-
43
- def getBACKLOG_API_KEY():
44
-
45
- if os.getenv('BACKLOG_API_KEY')==None:
46
-
47
- print('環境変数からBACKLOG_API_KEYを確認できませんでした。※登録しておくと今後入力が無くて便利です。')
48
-
49
- result = input("BACKLOG_API_KEYを入力してください。>>>")
50
-
51
- else:
52
-
53
- result = os.getenv('BACKLOG_API_KEY')
54
38
 
55
39
  return result
56
40
 
@@ -62,21 +46,27 @@
62
46
 
63
47
  with ListFile.open(mode='w') as f:
64
48
 
65
- print("チーム名,メンバー,メールアドレス", file=f)
49
+ with mdFile.open(mode='w',encoding="utf-8") as m:
66
50
 
67
- for n in range(0,1000,100):
51
+ print("チーム名,メンバー,メールアドレス", file=f)
68
52
 
69
- r = requests.get(BACKLOG_URL + '/api/v2/teams', params={'apiKey': BACKLOG_API_KEY, 'count': '100', 'order': 'asc', 'offset': n})
53
+ print("# OPRO Backlog チーム一覧\n| チーム名 | メンバー | メールアドレス |\n|--|--|--|", file=m)
70
54
 
71
- if r.status_code == requests.codes.ok:
55
+ for n in range(0,1000,100):
72
56
 
73
- data_json = json.loads(json.dumps(r.json(), ensure_ascii=False, indent=4))
57
+ r = requests.get(BACKLOG_URL + '/api/v2/teams', params={'apiKey': BACKLOG_API_KEY, 'count': '100', 'order': 'asc', 'offset': n})
74
58
 
75
- for data_json_key in data_json:
59
+ if r.status_code == requests.codes.ok and r.text!="[]":
76
60
 
77
- for data_json_val in data_json_key["members"]:
61
+ data_json = json.loads(json.dumps(r.json(), ensure_ascii=False, indent=4))
78
62
 
63
+ for data_json_key in data_json:
64
+
65
+ for data_json_val in data_json_key["members"]:
66
+
79
- print(data_json_key["name"] + "," + data_json_val["name"] + "," + data_json_val["mailAddress"], file=f)
67
+ print(data_json_key["name"] + "," + data_json_val["name"] + "," + data_json_val["mailAddress"], file=f)
68
+
69
+ print("| "+data_json_key["name"] + " | " + data_json_val["name"] + " | " + data_json_val["mailAddress"]+" |", file=m)
80
70
 
81
71
 
82
72
 
@@ -84,9 +74,9 @@
84
74
 
85
75
  if __name__ == '__main__':
86
76
 
87
- BACKLOG_URL = getBACKLOG_URL()
77
+ BACKLOG_URL = getenvfunction("BACKLOG_URL")
88
78
 
89
- BACKLOG_API_KEY = getBACKLOG_API_KEY()
79
+ BACKLOG_API_KEY = getenvfunction("BACKLOG_API_KEY")
90
80
 
91
81
  main()
92
82