Glider
Loading...
Searching...
No Matches
generate_csv.py
Go to the documentation of this file.
1# from datetime import datetime
2# import traceback
3# from pymongo import MongoClient
4# import pandas as pd
5# import sys
6# import os
7
8# # path = "~/Desktop/"
9# path = os.getcwd()
10
11# def getCSV(date):
12# date = datetime.strptime(date, "%Y-%m-%d")
13# template_format = collection.find({"accounting_date": date})
14# lines = []
15# print("file,quantity,isrc_id,release_id,release_title,track_title,artists,label_id,territory_code,type,service_id,date,accounting_date,foreign_currency,total_foreign,exchange_rate,local_currency,total_local")
16# for i in template_format:
17# if "copy" in i["file"]:
18# continue
19# try:
20# file = i["file"]
21# quantity = i["quantity"]
22# isrc_id = i["isrc_id"]
23# release_id = i["release_id"]
24# except KeyError as e:
25# if 'release_id' in str(e):
26# release_id = "undefined"
27# release_title = str(i["release_title"]).replace('"', "'")
28# track_title = str(i["track_title"]).replace('"', "'")
29# artists = i["artists"]
30# label_id = i["label_id"]
31# territory_code = i["territory_code"]
32# types = i["type"]
33# service_id = i["service_id"]
34# date_str = i["date"]
35# accounting_date = i["accounting_date"]
36# foreign_currency = i["foreign_currency"]
37# total_foreign = i["total_foreign"]
38# exchange_rate = i["exchange_rate"]
39# local_currency = i["local_currency"]
40# total_local = i["total_local"]
41# print('"{}",{},"{}","{}","{}","{}","{}","{}","{}","{}","{}","{}","{}","{}",{},{},"{}",{}'.format(file,quantity,isrc_id,release_id,release_title,track_title,artists,label_id,territory_code,types,service_id,date_str,accounting_date,foreign_currency,total_foreign,exchange_rate,local_currency,total_local))
42# # print(sys.exc_info()[2])
43# # print(traceback.format_exc())
44# # line = {
45# # }
46# # lines.append(line)
47# # df = pd.DataFrame(lines, columns=["file","quantity","isrc_id","release_id","release_title","track_title","artists","label_id","territory_code","type","service_id","date","accounting_date","foreign_currency","total_foreign","exchange_rate","local_currency","total_local"])
48# # df.fillna("undefined", inplace=True)
49# # df["quantity"] = df["quantity"].apply(lambda x: str(x).replace(".0", ""))
50# # df["quantity"] = df["quantity"].astype("int64")
51# # df.to_csv(path+name, index=False)
52
53# date = sys.argv[1]
54# # filename = sys.argv[2]
55# # data_collection = sys.argv[3]
56# uri = os.environ.get("MONGO_GLIDER")
57# db_name = os.environ.get("DB")
58# collection_name = os.environ.get("COLLECTION")
59# # download_path = os.environ.get("DOWNLOADS_FOLDER")
60# client = MongoClient(uri)
61# db = client[db_name]
62# collection = db[collection_name]
63
64
65# # print("Date = {d} Filename = {f} collection = {c}".format(d=date, f=filename, c=data_collection))
66
67# getCSV(date)
68
69# # python src/importer/generate_csv.py "2022-04-25" "Test22.csv" "Test_Apr22"
70# # time python src/importer/generate_csv.py "2022-09-05" "test_sep22.csv"
71# # time python src/importer/generate_csv.py "2022-09-05" > test_sep22.csv
72
73from datetime import datetime
74from pymongo import MongoClient
75import sys
76import os
77import json
78from bson.json_util import dumps
79
80path = os.getcwd()
81
82
83def get_rels(date):
84 f = open("date.json", "w")
85 date = datetime.strptime(date, "%Y-%m-%d")
86 template_format = collection.find({"accounting_date": date},{"_id":0})
87 # print("file\tquantity\tisrc_id\trelease_id\trelease_title\ttrack_title\tartists\tlabel_id\tterritory_code\ttype\tservice_id\tdate\taccounting_date\tforeign_currency\ttotal_foreign\texchange_rate\tlocal_currency\ttotal_local")
88 f.write("[")
89 for i in template_format:
90 f.write(json.dumps(i,default=str))
91 f.write(",\n")
92 f.write("{ }")
93 f.write("]")
94 # print("{ }")
95 # print("]")
96
97date = sys.argv[1]
98# filename = sys.argv[2]
99# data_collection = sys.argv[3]
100uri = os.environ.get("MONGO_GLIDER")
101db_name = os.environ.get("DB")
102collection_name = os.environ.get("COLLECTION")
103# download_path = os.environ.get("DOWNLOADS_FOLDER")
104client = MongoClient(uri)
105db = client[db_name]
106collection = db[collection_name]
107
108
109get_rels(date)