mdbq 1.2.9__py3-none-any.whl → 1.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mdbq/aggregation/aggregation.py +17 -9
- mdbq/aggregation/query_data.py +7 -7
- mdbq/clean/data_clean.py +55 -33
- {mdbq-1.2.9.dist-info → mdbq-1.3.1.dist-info}/METADATA +1 -1
- {mdbq-1.2.9.dist-info → mdbq-1.3.1.dist-info}/RECORD +7 -7
- {mdbq-1.2.9.dist-info → mdbq-1.3.1.dist-info}/WHEEL +0 -0
- {mdbq-1.2.9.dist-info → mdbq-1.3.1.dist-info}/top_level.txt +0 -0
mdbq/aggregation/aggregation.py
CHANGED
@@ -174,14 +174,14 @@ class DatabaseUpdate:
|
|
174
174
|
db_name = '生意参谋2'
|
175
175
|
if '经营优势' in df['一级来源'].tolist(): # 新版流量
|
176
176
|
if '数据周期' in df.columns.tolist():
|
177
|
-
collection_name='店铺来源_月数据
|
177
|
+
collection_name='店铺来源_月数据'
|
178
178
|
else:
|
179
|
-
collection_name='店铺来源_日数据
|
179
|
+
collection_name='店铺来源_日数据'
|
180
180
|
else: # 旧版流量
|
181
181
|
if '数据周期' in df.columns.tolist():
|
182
|
-
collection_name='店铺来源_月数据'
|
182
|
+
collection_name='店铺来源_月数据_旧版'
|
183
183
|
else:
|
184
|
-
collection_name='店铺来源_日数据'
|
184
|
+
collection_name='店铺来源_日数据_旧版'
|
185
185
|
elif name.endswith('.xls') and '生意参谋' in name and '商品_全部' in name:
|
186
186
|
# 店铺商品排行
|
187
187
|
df = pd.read_excel(os.path.join(root, name), header=4)
|
@@ -358,13 +358,21 @@ class DatabaseUpdate:
|
|
358
358
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
359
359
|
elif name.endswith('.csv') and '市场排行_店铺' in name:
|
360
360
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
361
|
-
elif name.endswith('.csv') and '类目洞察_属性分析' in name:
|
361
|
+
elif name.endswith('.csv') and '类目洞察_属性分析_分析明细_商品发现' in name:
|
362
|
+
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
363
|
+
elif name.endswith('.csv') and '类目洞察_属性分析_分析明细_汇总' in name:
|
364
|
+
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
365
|
+
elif name.endswith('.csv') and '类目洞察_价格分析_分析明细_商品发现' in name:
|
366
|
+
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
367
|
+
elif name.endswith('.csv') and '类目洞察_价格分析_分析明细_汇总' in name:
|
368
|
+
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
369
|
+
elif name.endswith('.csv') and '竞店分析-销售分析-关键指标对比' in name:
|
362
370
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
363
|
-
elif name.endswith('.csv') and '
|
371
|
+
elif name.endswith('.csv') and '竞店分析-销售分析-top商品榜' in name:
|
364
372
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
365
|
-
elif name.endswith('.csv') and '
|
373
|
+
elif name.endswith('.csv') and '竞店分析-来源分析-入店来源' in name:
|
366
374
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
367
|
-
elif name.endswith('.csv') and '
|
375
|
+
elif name.endswith('.csv') and '竞店分析-来源分析-入店搜索词' in name:
|
368
376
|
df = pd.read_csv(os.path.join(root, name), encoding='utf-8_sig', header=0, na_filter=False)
|
369
377
|
# ----------------------- 京东数据处理分界线 -----------------------
|
370
378
|
# ----------------------- 京东数据处理分界线 -----------------------
|
@@ -983,7 +991,7 @@ if __name__ == '__main__':
|
|
983
991
|
# database='mysql'
|
984
992
|
# )
|
985
993
|
# db_name = '生意参谋2'
|
986
|
-
# table_name = '店铺来源_日数据
|
994
|
+
# table_name = '店铺来源_日数据'
|
987
995
|
# upload_dir(
|
988
996
|
# path='/Users/xigua/数据中心/原始文件2/生意参谋/流量来源',
|
989
997
|
# db_name=db_name,
|
mdbq/aggregation/query_data.py
CHANGED
@@ -167,7 +167,7 @@ class MysqlDatasQuery:
|
|
167
167
|
}
|
168
168
|
df = self.download.data_to_df(
|
169
169
|
db_name='生意参谋2',
|
170
|
-
table_name='店铺来源_日数据',
|
170
|
+
table_name='店铺来源_日数据_旧版',
|
171
171
|
start_date=start_date,
|
172
172
|
end_date=end_date,
|
173
173
|
projection=projection,
|
@@ -320,7 +320,7 @@ class GroupBy:
|
|
320
320
|
}
|
321
321
|
)
|
322
322
|
return df
|
323
|
-
elif '店铺来源_日数据' in table_name:
|
323
|
+
elif '店铺来源_日数据_旧版' in table_name:
|
324
324
|
return df
|
325
325
|
elif '商品id编码表' in table_name:
|
326
326
|
df['宝贝id'] = df['宝贝id'].astype(str)
|
@@ -495,7 +495,7 @@ class GroupBy:
|
|
495
495
|
df.to_excel(os.path.join(path, filename + '.xlsx'), index=index, header=header, engine=engine, freeze_panes=freeze_panes)
|
496
496
|
|
497
497
|
|
498
|
-
def data_aggregation(service_databases=[{}]):
|
498
|
+
def data_aggregation(service_databases=[{}], months=1):
|
499
499
|
"""
|
500
500
|
1. 从数据库中读取数据
|
501
501
|
2. 数据聚合清洗
|
@@ -504,7 +504,7 @@ def data_aggregation(service_databases=[{}]):
|
|
504
504
|
for service_database in service_databases:
|
505
505
|
for service_name, database in service_database.items():
|
506
506
|
sdq = MysqlDatasQuery(target_service=service_name) # 实例化数据处理类
|
507
|
-
sdq.months =
|
507
|
+
sdq.months = months # 设置数据周期, 1 表示近 2 个月
|
508
508
|
g = GroupBy() # 实例化数据聚合类
|
509
509
|
# 实例化数据库连接
|
510
510
|
username, password, host, port = get_myconf.select_config_values(target_service=service_name, database=database)
|
@@ -526,7 +526,7 @@ def data_aggregation(service_databases=[{}]):
|
|
526
526
|
},
|
527
527
|
{
|
528
528
|
'数据库名': '聚合数据',
|
529
|
-
'集合名': '天猫_店铺来源_日数据',
|
529
|
+
'集合名': '天猫_店铺来源_日数据_旧版',
|
530
530
|
'唯一主键': ['日期', '一级来源', '二级来源', '三级来源'],
|
531
531
|
'数据主体': sdq.dplyd(),
|
532
532
|
},
|
@@ -552,7 +552,7 @@ def data_aggregation(service_databases=[{}]):
|
|
552
552
|
for items in data_dict: # 遍历返回结果
|
553
553
|
db_name, table_name, unique_key_list, df = items['数据库名'], items['集合名'], items['唯一主键'], items['数据主体']
|
554
554
|
df = g.groupby(df=df, table_name=table_name, is_maximize=True) # 2. 聚合数据
|
555
|
-
g.as_csv(df=df, filename=table_name + '.csv') # 导出 csv
|
555
|
+
# g.as_csv(df=df, filename=table_name + '.csv') # 导出 csv
|
556
556
|
m.df_to_mysql(
|
557
557
|
df=df,
|
558
558
|
db_name=db_name,
|
@@ -581,5 +581,5 @@ def data_aggregation(service_databases=[{}]):
|
|
581
581
|
|
582
582
|
|
583
583
|
if __name__ == '__main__':
|
584
|
-
data_aggregation(service_databases=[{'company': 'mysql'}])
|
584
|
+
data_aggregation(service_databases=[{'company': 'mysql'}], months=1)
|
585
585
|
# optimize_data.op_data(service_databases=[{'company': 'mysql'}], days=3650) # 立即启动对聚合数据的清理工作
|
mdbq/clean/data_clean.py
CHANGED
@@ -269,25 +269,25 @@ class DataClean:
|
|
269
269
|
if '经营优势' in df['一级来源'].tolist(): # 新版流量
|
270
270
|
if '数据周期' in df.columns.tolist():
|
271
271
|
if self.set_up_to_mogo:
|
272
|
-
d.df_to_mongo(df=df, db_name='
|
272
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_店铺来源_月数据')
|
273
273
|
if self.set_up_to_mysql:
|
274
|
-
m.df_to_mysql(df=df, db_name='
|
274
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_店铺来源_月数据')
|
275
275
|
else:
|
276
276
|
if self.set_up_to_mogo:
|
277
|
-
d.df_to_mongo(df=df, db_name='
|
277
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_店铺来源_日数据')
|
278
278
|
if self.set_up_to_mysql:
|
279
|
-
m.df_to_mysql(df=df, db_name='
|
279
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_店铺来源_日数据')
|
280
280
|
else: # 旧版流量
|
281
281
|
if '数据周期' in df.columns.tolist():
|
282
282
|
if self.set_up_to_mogo:
|
283
|
-
d.df_to_mongo(df=df, db_name='
|
283
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_店铺来源_月数据_旧版')
|
284
284
|
if self.set_up_to_mysql:
|
285
|
-
m.df_to_mysql(df=df, db_name='
|
285
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_店铺来源_月数据_旧版')
|
286
286
|
else:
|
287
287
|
if self.set_up_to_mogo:
|
288
|
-
d.df_to_mongo(df=df, db_name='
|
288
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_店铺来源_日数据_旧版')
|
289
289
|
if self.set_up_to_mysql:
|
290
|
-
m.df_to_mysql(df=df, db_name='
|
290
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_店铺来源_日数据_旧版')
|
291
291
|
os.remove(os.path.join(root, name))
|
292
292
|
|
293
293
|
elif name.endswith('.xls') and '生意参谋' in name and '商品_全部' in name:
|
@@ -311,9 +311,9 @@ class DataClean:
|
|
311
311
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
312
312
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
313
313
|
if self.set_up_to_mogo:
|
314
|
-
d.df_to_mongo(df=df, db_name='
|
314
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_商品排行')
|
315
315
|
if self.set_up_to_mysql:
|
316
|
-
m.df_to_mysql(df=df, db_name='
|
316
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_商品排行')
|
317
317
|
os.remove(os.path.join(root, name))
|
318
318
|
|
319
319
|
elif name.endswith('.xls') and '参谋店铺整体日报' in name:
|
@@ -327,9 +327,9 @@ class DataClean:
|
|
327
327
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
328
328
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
329
329
|
if self.set_up_to_mogo:
|
330
|
-
d.df_to_mongo(df=df,db_name='
|
330
|
+
d.df_to_mongo(df=df,db_name='生意参谋2', collection_name='生意参谋_自助取数_整体日报')
|
331
331
|
if self.set_up_to_mysql:
|
332
|
-
m.df_to_mysql(df=df, db_name='
|
332
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_自助取数_整体日报')
|
333
333
|
os.remove(os.path.join(root, name))
|
334
334
|
|
335
335
|
elif name.endswith('.xls') and '参谋每日流量_自助取数_新版' in name:
|
@@ -353,9 +353,9 @@ class DataClean:
|
|
353
353
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
354
354
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
355
355
|
if self.set_up_to_mogo:
|
356
|
-
d.df_to_mongo(df=df, db_name='
|
356
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_自助取数_每日流量')
|
357
357
|
if self.set_up_to_mysql:
|
358
|
-
m.df_to_mysql(df=df, db_name='
|
358
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_自助取数_每日流量')
|
359
359
|
os.remove(os.path.join(root, name))
|
360
360
|
|
361
361
|
elif name.endswith('.xls') and '商品sku' in name:
|
@@ -376,9 +376,9 @@ class DataClean:
|
|
376
376
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
377
377
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
378
378
|
if self.set_up_to_mogo:
|
379
|
-
d.df_to_mongo(df=df, db_name='
|
379
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_自助取数_商品sku')
|
380
380
|
if self.set_up_to_mysql:
|
381
|
-
m.df_to_mysql(df=df, db_name='
|
381
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_自助取数_商品sku')
|
382
382
|
os.remove(os.path.join(root, name))
|
383
383
|
|
384
384
|
elif name.endswith('.xls') and '参谋店铺流量来源(月)' in name:
|
@@ -403,9 +403,9 @@ class DataClean:
|
|
403
403
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
404
404
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
405
405
|
if self.set_up_to_mogo:
|
406
|
-
d.df_to_mongo(df=df, db_name='
|
406
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_自助取数_店铺流量_月数据')
|
407
407
|
if self.set_up_to_mysql:
|
408
|
-
m.df_to_mysql(df=df, db_name='
|
408
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_自助取数_店铺流量_月数据')
|
409
409
|
os.remove(os.path.join(root, name))
|
410
410
|
|
411
411
|
elif name.endswith('.csv') and 'baobei' in name:
|
@@ -561,9 +561,9 @@ class DataClean:
|
|
561
561
|
df = pd.merge(df_lin, df, how='outer', on=col4)
|
562
562
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
563
563
|
if self.set_up_to_mogo:
|
564
|
-
d.df_to_mongo(df=df, db_name='
|
564
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_直播间成交订单明细')
|
565
565
|
if self.set_up_to_mysql:
|
566
|
-
m.df_to_mysql(df=df, db_name='
|
566
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_直播间成交订单明细')
|
567
567
|
os.remove(os.path.join(root, name))
|
568
568
|
|
569
569
|
elif name.endswith('.xlsx') and '直播间大盘数据' in name:
|
@@ -582,9 +582,9 @@ class DataClean:
|
|
582
582
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
583
583
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
584
584
|
if self.set_up_to_mogo:
|
585
|
-
d.df_to_mongo(df=df, db_name='
|
585
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_直播间大盘数据')
|
586
586
|
if self.set_up_to_mysql:
|
587
|
-
m.df_to_mysql(df=df, db_name='
|
587
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_直播间大盘数据')
|
588
588
|
os.remove(os.path.join(root, name))
|
589
589
|
|
590
590
|
elif name.endswith('.xls') and '直播业绩-成交拆解' in name:
|
@@ -604,9 +604,9 @@ class DataClean:
|
|
604
604
|
df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
|
605
605
|
self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
|
606
606
|
if self.set_up_to_mogo:
|
607
|
-
d.df_to_mongo(df=df, db_name='
|
607
|
+
d.df_to_mongo(df=df, db_name='生意参谋2', collection_name='生意参谋_直播业绩')
|
608
608
|
if self.set_up_to_mysql:
|
609
|
-
m.df_to_mysql(df=df, db_name='
|
609
|
+
m.df_to_mysql(df=df, db_name='生意参谋2', tabel_name='生意参谋_直播业绩')
|
610
610
|
os.remove(os.path.join(root, name))
|
611
611
|
|
612
612
|
elif name.endswith('.xlsx') and '明星店铺' in name:
|
@@ -988,11 +988,15 @@ class DataClean:
|
|
988
988
|
|
989
989
|
if name.endswith('.csv') and '无线店铺流量来源' in name:
|
990
990
|
date01 = re.findall(r'\d{4}-\d{2}-(\d{2})_\d{4}-\d{2}-(\d{2})', name)
|
991
|
+
|
991
992
|
if int(date01[0][1]) - int(date01[0][0]) > 15:
|
992
|
-
t_path = str(pathlib.Path(self.source_path, '月数据/流量来源'))
|
993
|
+
t_path = str(pathlib.Path(self.source_path, '月数据/流量来源_旧版'))
|
993
994
|
bib(t_path)
|
994
|
-
|
995
|
+
elif '_新版' in name:
|
995
996
|
t_path = str(pathlib.Path(self.source_path, '生意参谋/流量来源'))
|
997
|
+
bib(t_path)
|
998
|
+
else:
|
999
|
+
t_path = str(pathlib.Path(self.source_path, '生意参谋/流量来源_旧版'))
|
996
1000
|
bib(t_path, _as_month=True)
|
997
1001
|
elif name.endswith('.csv') and '商品_全部' in name:
|
998
1002
|
t_path = str(pathlib.Path(self.source_path, '生意参谋/商品排行'))
|
@@ -1009,20 +1013,38 @@ class DataClean:
|
|
1009
1013
|
elif name.endswith('.csv') and '参谋店铺流量来源(月)' in name:
|
1010
1014
|
t_path = str(pathlib.Path(self.source_path, '月数据/流量来源-自助取数-月数据'))
|
1011
1015
|
bib(t_path, _as_month=True)
|
1012
|
-
elif name.endswith('.csv') and '
|
1013
|
-
t_path = str(pathlib.Path(self.source_path, '
|
1014
|
-
bib(t_path, _as_month=
|
1016
|
+
elif name.endswith('.csv') and '竞店分析' in name and '来源分析-入店来源' in name:
|
1017
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/竞店分析/来源分析/入店来源'))
|
1018
|
+
bib(t_path, _as_month=False)
|
1019
|
+
elif name.endswith('.csv') and '竞店分析' in name and '来源分析-入店搜索词' in name:
|
1020
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/竞店分析/来源分析/入店搜索词'))
|
1021
|
+
bib(t_path, _as_month=False)
|
1022
|
+
elif name.endswith('.csv') and '竞店分析' in name and '销售分析-关键指标对比' in name:
|
1023
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/竞店分析/销售分析/关键指标对比'))
|
1024
|
+
bib(t_path, _as_month=False)
|
1025
|
+
elif name.endswith('.csv') and '竞店分析' in name and '销售分析-top商品榜' in name:
|
1026
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/竞店分析/销售分析/top商品榜'))
|
1027
|
+
bib(t_path, _as_month=False)
|
1015
1028
|
elif name.endswith('.csv') and '监控店铺数据' in name:
|
1016
1029
|
t_path = str(pathlib.Path(self.source_path, '市场数据/监控店铺数据'))
|
1017
1030
|
bib(t_path, _as_month=True)
|
1018
1031
|
elif name.endswith('.csv') and '监控商品' in name:
|
1019
1032
|
t_path = str(pathlib.Path(self.source_path, '市场数据/监控商品数据'))
|
1020
1033
|
bib(t_path, _as_month=True)
|
1021
|
-
elif name.endswith('.csv') and '竞店分析-流量分析' in name:
|
1022
|
-
|
1034
|
+
# elif name.endswith('.csv') and '竞店分析-流量分析' in name:
|
1035
|
+
# t_path = str(pathlib.Path(self.source_path, '市场数据/竞店流量构成'))
|
1036
|
+
# bib(t_path, _as_month=True)
|
1037
|
+
elif name.endswith('.csv') and '类目洞察' in name and '属性分析_分析明细_汇总' in name:
|
1038
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/类目洞察/属性分析/汇总'))
|
1039
|
+
bib(t_path, _as_month=True)
|
1040
|
+
elif name.endswith('.csv') and '类目洞察' in name and '属性分析_分析明细_商品发现' in name:
|
1041
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/类目洞察/属性分析/商品发现'))
|
1042
|
+
bib(t_path, _as_month=True)
|
1043
|
+
elif name.endswith('.csv') and '类目洞察' in name and '价格分析_分析明细_汇总' in name:
|
1044
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/类目洞察/价格分析/汇总'))
|
1023
1045
|
bib(t_path, _as_month=True)
|
1024
|
-
elif name.endswith('.csv') and '类目洞察' in name:
|
1025
|
-
t_path = str(pathlib.Path(self.source_path, '
|
1046
|
+
elif name.endswith('.csv') and '类目洞察' in name and '价格分析_分析明细_商品发现' in name:
|
1047
|
+
t_path = str(pathlib.Path(self.source_path, '市场数据/类目洞察/价格分析/商品发现'))
|
1026
1048
|
bib(t_path, _as_month=True)
|
1027
1049
|
elif name.endswith('.csv') and '市场排行_店铺排行' in name:
|
1028
1050
|
t_path = str(pathlib.Path(self.source_path, '市场数据/市场二级类目店铺'))
|
@@ -1,15 +1,15 @@
|
|
1
1
|
mdbq/__init__.py,sha256=Il5Q9ATdX8yXqVxtP_nYqUhExzxPC_qk_WXQ_4h0exg,16
|
2
2
|
mdbq/__version__.py,sha256=y9Mp_8x0BCZSHsdLT_q5tX9wZwd5QgqrSIENLrb6vXA,62
|
3
3
|
mdbq/aggregation/__init__.py,sha256=EeDqX2Aml6SPx8363J-v1lz0EcZtgwIBYyCJV6CcEDU,40
|
4
|
-
mdbq/aggregation/aggregation.py,sha256=
|
4
|
+
mdbq/aggregation/aggregation.py,sha256=E0LuoybFFUEu8JTArYVVi5tAtuPxZTMm4CHkfAd92JQ,57627
|
5
5
|
mdbq/aggregation/df_types.py,sha256=rHLIgv82PJSFmDvXkZyOJAffXkFyyMyFO23w9tUt8EQ,7525
|
6
6
|
mdbq/aggregation/mysql_types.py,sha256=_XIqpaX_qmqolFlGywMYfvBn32u8MbPCaX6n7rQOVRQ,10634
|
7
7
|
mdbq/aggregation/optimize_data.py,sha256=jLAWtxPUuhpo4XTVrhKtT4xK3grs7r73ePQfLhxlu1I,779
|
8
|
-
mdbq/aggregation/query_data.py,sha256=
|
8
|
+
mdbq/aggregation/query_data.py,sha256=eLsxev_fEW_7N-uqTBsINLZbHP6B0wqjxVzIL4-SK3c,27131
|
9
9
|
mdbq/bdup/__init__.py,sha256=AkhsGk81SkG1c8FqDH5tRq-8MZmFobVbN60DTyukYTY,28
|
10
10
|
mdbq/bdup/bdup.py,sha256=LAV0TgnQpc-LB-YuJthxb0U42_VkPidzQzAagan46lU,4234
|
11
11
|
mdbq/clean/__init__.py,sha256=A1d6x3L27j4NtLgiFV5TANwEkLuaDfPHDQNrPBbNWtU,41
|
12
|
-
mdbq/clean/data_clean.py,sha256=
|
12
|
+
mdbq/clean/data_clean.py,sha256=TnG0t6Ted9miMoBdGanpTmj6AUa0YFSyEBvmgN3V7sw,87558
|
13
13
|
mdbq/company/__init__.py,sha256=qz8F_GsP_pMB5PblgJAUAMjasuZbOEp3qQOCB39E8f0,21
|
14
14
|
mdbq/company/copysh.py,sha256=i8f8YxmUg-EIzQR-ZHTtnC1A5InwsRtY1_sIsCznVp8,16363
|
15
15
|
mdbq/config/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
|
@@ -35,7 +35,7 @@ mdbq/pbix/__init__.py,sha256=Trtfaynu9RjoTyLLYBN2xdRxTvm_zhCniUkVTAYwcjo,24
|
|
35
35
|
mdbq/pbix/pbix_refresh.py,sha256=JUjKW3bNEyoMVfVfo77UhguvS5AWkixvVhDbw4_MHco,2396
|
36
36
|
mdbq/pbix/refresh_all.py,sha256=tgy762608HMaXWynbOURIf2UVMuSPybzrDXQnOOcnZU,6102
|
37
37
|
mdbq/spider/__init__.py,sha256=RBMFXGy_jd1HXZhngB2T2XTvJqki8P_Fr-pBcwijnew,18
|
38
|
-
mdbq-1.
|
39
|
-
mdbq-1.
|
40
|
-
mdbq-1.
|
41
|
-
mdbq-1.
|
38
|
+
mdbq-1.3.1.dist-info/METADATA,sha256=r3c6nhrIMxNU9aCxjLM5coFu3qPglqzbt1EVME5_1Ow,245
|
39
|
+
mdbq-1.3.1.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
40
|
+
mdbq-1.3.1.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
|
41
|
+
mdbq-1.3.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|