質問編集履歴

4

文法の修正

2019/06/19 08:16

投稿

shoshi
shoshi

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ### ヘディングのテキスト### 前提・実現したいこと
1
+ 前提・実現したいこと
2
2
 
3
3
  コマンドラインの中で以下の仕様を実装するコードが知りたいです。
4
4
 
@@ -8,9 +8,7 @@
8
8
 
9
9
  2.引数はファイル名に連動する。
10
10
 
11
- 3.S3上にある1件ずつのcsvを1つにし
11
+ 3.S3上にある1件ずつのcsvのファイル名リストにしたcsvをS3にアップロードする。
12
-
13
- S3にアップロードする。
14
12
 
15
13
  4.1つにしたcsvからコマンドラインで指定したオプションパラメーターでフィルターをかけたリストをcsvにしローカル保存。
16
14
 
@@ -18,11 +16,9 @@
18
16
 
19
17
  ※csvを1つにする際に同じ種類のものがあったら1番新しいものを使用する。
20
18
 
19
+ 作成するリストは「果物」と「好み」でフィルターされた指定期間のもの。
21
20
 
22
-
23
- ※作成するリストは果物の種類と好きか嫌いでフィルターされた指定期間のもの。
24
-
25
- 果物で被ってるのがあったら1番新しいものだけを表示する。
21
+ 果物で被ってるのがあったら1番新しいものだけを表示する。
26
22
 
27
23
 
28
24
 
@@ -46,7 +42,7 @@
46
42
 
47
43
  コマンドライン例)
48
44
 
49
- python test.py イチゴきor嫌い 期間始め 期間終わり
45
+ python test.py 果物 期間始め 期間終わり
50
46
 
51
47
 
52
48
 
@@ -94,13 +90,13 @@
94
90
 
95
91
 
96
92
 
97
- #S3からcsvをダウンロード
93
+ #S3からcsvをダウンロード ファイル名を取得してリストにする為不要と思われる。
98
94
 
99
95
  s3 = boto3.resource('s3')
100
96
 
101
97
  bucket = s3.Bucket(BUCKET_NAME)
102
98
 
103
- bucket.download_file('')#全てダウンロードするのはちょっと違うと思う…ファイル名のリストだし。
99
+ bucket.download_file('')
104
100
 
105
101
 
106
102
 

3

s3ダウンロードコード追加。

2019/06/19 08:15

投稿

shoshi
shoshi

スコア18

test CHANGED
File without changes
test CHANGED
@@ -94,6 +94,16 @@
94
94
 
95
95
 
96
96
 
97
+ #S3からcsvをダウンロード
98
+
99
+ s3 = boto3.resource('s3')
100
+
101
+ bucket = s3.Bucket(BUCKET_NAME)
102
+
103
+ bucket.download_file('')#全てダウンロードするのはちょっと違うと思う…ファイル名のリストだし。
104
+
105
+
106
+
97
107
  #S3にあるcsvを1つにしてcsvを作る(既にある場合は上書き)
98
108
 
99
109
 

2

コードの追加。

2019/06/19 05:50

投稿

shoshi
shoshi

スコア18

test CHANGED
File without changes
test CHANGED
@@ -60,6 +60,18 @@
60
60
 
61
61
  import sys
62
62
 
63
+ import csv
64
+
65
+
66
+
67
+ #S3設定
68
+
69
+ BUCKET_NAME = 'hoge'
70
+
71
+ aws_access_key_id = 'IAMユーザーの'
72
+
73
+ aws_secret_access_key = 'IAMユーザーの'
74
+
63
75
 
64
76
 
65
77
  def main():
@@ -72,7 +84,7 @@
72
84
 
73
85
  print("果物  :" + args[1])
74
86
 
75
- print("好き嫌い:" + args[2])
87
+ print("好み  :" + args[2])
76
88
 
77
89
  print("期間初め:" + args[3])
78
90
 
@@ -88,13 +100,21 @@
88
100
 
89
101
  #作ったcsvをS3にアップロード
90
102
 
103
+ s3 = boto3.resource('s3')
104
+
105
+ bucket = s3.Bucket(BUCKET_NAME)
106
+
107
+ bucket.upload_file('s3all.csv')
91
108
 
92
109
 
110
+
93
- #コマンドライン引数で指定したオプションでフィルターしリスト.csvを作る。
111
+ #コマンドライン引数で指定したオプションでフィルターしリストcsvを作る。
94
112
 
95
113
 
96
114
 
97
115
  #作ったcsvをローカルに保存
116
+
117
+ f = open('list.csv', 'ab')
98
118
 
99
119
 
100
120
 

1

質問内容の追加。

2019/06/19 05:42

投稿

shoshi
shoshi

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,6 @@
1
1
  ### ヘディングのテキスト### 前提・実現したいこと
2
+
3
+ コマンドラインの中で以下の仕様を実装するコードが知りたいです。
2
4
 
3
5
 
4
6
 
@@ -18,13 +20,9 @@
18
20
 
19
21
 
20
22
 
21
- ※作成するリストは果物の種類と
23
+ ※作成するリストは果物の種類と好きか嫌いでフィルターされた指定期間のもの。
22
24
 
23
- 好きか嫌いでフィルターされた、
24
-
25
- 指定期間のもの。果物で被ってるのが
26
-
27
- あったら1番新しいものだけ使う
25
+ 果物で被ってるのがあったら1番新しいものだけを表示する
28
26
 
29
27
 
30
28
 
@@ -32,12 +30,76 @@
32
30
 
33
31
  S3ファイル名:
34
32
 
35
- 引数1 引数2 引数3
33
+ 果物 好み 期間
36
34
 
37
- バナナ-好き-20190619.csv
35
+ バナナ-嫌い-20190619.csv
36
+
37
+ ミカン-好き-20190619.csv
38
+
39
+ リンゴ-好き-20190620.csv
40
+
41
+ イチゴ-好き-20190621.csv
42
+
43
+
38
44
 
39
45
 
40
46
 
41
47
  コマンドライン例)
42
48
 
43
- python test.py 果物名 好きor嫌い 期間始め 期間終わり
49
+ python test.py イチゴ 好きor嫌い 期間始め 期間終わり
50
+
51
+
52
+
53
+
54
+
55
+
56
+
57
+ ```python
58
+
59
+ import boto3
60
+
61
+ import sys
62
+
63
+
64
+
65
+ def main():
66
+
67
+ #コマンドラインスタート
68
+
69
+ args = sys.argv
70
+
71
+ print(args)
72
+
73
+ print("果物  :" + args[1])
74
+
75
+ print("好き嫌い:" + args[2])
76
+
77
+ print("期間初め:" + args[3])
78
+
79
+ print("期間終了:" + args[4])
80
+
81
+
82
+
83
+
84
+
85
+ #S3にあるcsvを1つにしてcsvを作る(既にある場合は上書き)
86
+
87
+
88
+
89
+ #作ったcsvをS3にアップロード
90
+
91
+
92
+
93
+ #コマンドライン引数で指定したオプションでフィルターしリスト.csvを作る。
94
+
95
+
96
+
97
+ #作ったcsvをローカルに保存
98
+
99
+
100
+
101
+ if __name__ == '__main__':
102
+
103
+ main()
104
+
105
+ ```