mdbq 2.0.2__py3-none-any.whl → 2.0.4__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.
@@ -320,6 +320,14 @@ class DatabaseUpdate:
320
320
  )
321
321
  df['日期'] = df['数据周期'].apply(lambda x: re.findall('(.*) ~', x)[0])
322
322
  check_remove_file = True
323
+ elif name.endswith('.csv') and '分天数据-计划_活动类型-推广概览-数据汇总' in name:
324
+ df = pd.read_csv(os.path.join(root, name), encoding=encoding, header=0, na_filter=False)
325
+ df['日期'].replace(to_replace=['\\t'], value='', regex=True, inplace=True)
326
+ df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
327
+ # min_clm = str(df['日期'].min()).split(' ')[0]
328
+ # max_clm = str(df['日期'].max()).split(' ')[0]
329
+ # new_name = f'淘宝联盟_分天数据_计划_活动类型_推广概览_数据汇总_{min_clm}_{max_clm}'
330
+ check_remove_file = True
323
331
  elif name.endswith('.csv') and 'baobei' in name:
324
332
  # 生意经宝贝指标日数据
325
333
  date = re.findall(r's-(\d{4})(\d{2})(\d{2})\.', str(name))
@@ -1244,7 +1252,7 @@ def test2():
1244
1252
  if __name__ == '__main__':
1245
1253
  username, password, host, port = get_myconf.select_config_values(target_service='nas', database='mysql')
1246
1254
  print(username, password, host, port)
1247
- file_dir(one_file=False, target_service='home_lx')
1255
+ file_dir(one_file=False, target_service='company')
1248
1256
  # one_file_to_mysql(
1249
1257
  # file='/Users/xigua/数据中心/原始文件2/京东报表/JD推广_全站营销报表/2024-08/万里马箱包推广1_营销概况_全站营销_2024-08-19_2024-09-02.csv',
1250
1258
  # db_name='京东数据2',
@@ -1269,8 +1277,8 @@ if __name__ == '__main__':
1269
1277
  # dp.new_unzip(is_move=True)
1270
1278
  # dp.cleaning(is_move=False) # 清洗数据, 存入 self.datas, 不需要立即移除文件,仍保留文件到原始文件中
1271
1279
  # # 将 self.datas 更新至数据库
1272
- # dp.upload_df(service_databases=[
1273
- # # {'home_lx': 'mongodb'},
1274
- # {'company': 'mysql'},
1275
- # # {'nas': 'mysql'},
1276
- # ])
1280
+ # # dp.upload_df(service_databases=[
1281
+ # # # {'home_lx': 'mongodb'},
1282
+ # # {'company': 'mysql'},
1283
+ # # # {'nas': 'mysql'},
1284
+ # # ])
@@ -1535,7 +1535,7 @@ def main():
1535
1535
 
1536
1536
 
1537
1537
  if __name__ == '__main__':
1538
- data_aggregation(service_databases=[{'home_lx': 'mysql'}], months=24) # 正常的聚合所有数据
1538
+ data_aggregation(service_databases=[{'company': 'mysql'}], months=7) # 正常的聚合所有数据
1539
1539
  # data_aggregation_one(service_databases=[{'company': 'mysql'}], months=1) # 单独聚合某一个数据库,具体库进函数编辑
1540
1540
  # optimize_data.op_data(service_databases=[{'company': 'mysql'}], days=3650) # 立即启动对聚合数据的清理工作
1541
1541
 
mdbq/clean/data_clean.py CHANGED
@@ -272,11 +272,14 @@ class DataClean:
272
272
  df.insert(loc=0, column='数据周期', value=data_lis)
273
273
  df.insert(loc=0, column='日期', value=date01[0])
274
274
  # 2024-2-19 官方更新了推广渠道来源名称
275
+ # df['三级来源'] = df['三级来源'].apply(
276
+ # lambda x: '精准人群推广' if x == '精准人群推广(原引力魔方)'
277
+ # else '关键词推广' if x == '关键词推广(原直通车)'
278
+ # else '智能场景' if x == '智能场景(原万相台)'
279
+ # else x
280
+ # )
275
281
  df['三级来源'] = df['三级来源'].apply(
276
- lambda x: '精准人群推广' if x == '精准人群推广(原引力魔方)'
277
- else '关键词推广' if x == '关键词推广(原直通车)'
278
- else '智能场景' if x == '智能场景(原万相台)'
279
- else x
282
+ lambda x: re.sub('(.*)', '', str(x) if x else x)
280
283
  )
281
284
  # df = df[df['访客数'] != '0']
282
285
  df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
@@ -474,6 +477,15 @@ class DataClean:
474
477
  new_name = re.sub(r' ?(\(\d+\))', '',new_name)
475
478
  self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
476
479
  os.remove(os.path.join(root, name))
480
+ elif name.endswith('.csv') and '分天数据-计划_活动类型-推广概览-数据汇总' in name:
481
+ df = pd.read_csv(os.path.join(root, name), encoding=encoding, header=0, na_filter=False)
482
+ df['日期'].replace(to_replace=['\\t'], value='', regex=True, inplace=True)
483
+ df['日期'] = pd.to_datetime(df['日期'], format='%Y-%m-%d', errors='ignore')
484
+ min_clm = str(df['日期'].min()).split(' ')[0]
485
+ max_clm = str(df['日期'].max()).split(' ')[0]
486
+ new_name = f'淘宝联盟_分天数据_计划_活动类型_推广概览_数据汇总_{min_clm}_{max_clm}'
487
+ self.save_to_csv(df, root, new_name) # mysql 可能改变 df 列名,所以在上传 mysql 前保存 csv
488
+ os.remove(os.path.join(root, name))
477
489
  elif name.endswith('.csv') and 'baobei' in name:
478
490
  # 生意经宝贝指标日数据
479
491
  # print(name)
@@ -1121,7 +1133,7 @@ class DataClean:
1121
1133
  bib(t_path)
1122
1134
  elif '_新版' in name:
1123
1135
  t_path = str(pathlib.Path(self.source_path, '生意参谋/流量来源'))
1124
- bib(t_path)
1136
+ bib(t_path, _as_month=True)
1125
1137
  else:
1126
1138
  t_path = str(pathlib.Path(self.source_path, '生意参谋/流量来源_旧版'))
1127
1139
  bib(t_path, _as_month=True)
@@ -1143,6 +1155,9 @@ class DataClean:
1143
1155
  elif name.endswith('.csv') and '参谋店铺流量来源(月)' in name:
1144
1156
  t_path = str(pathlib.Path(self.source_path, '月数据/流量来源-自助取数-月数据'))
1145
1157
  bib(t_path, _as_month=True)
1158
+ elif name.endswith('.csv') and '淘宝联盟_分天数据_计划_活动类型_推广概览_数据汇总' in name:
1159
+ t_path = str(pathlib.Path(self.source_path, '月数据/淘宝联盟'))
1160
+ bib(t_path, _as_month=False)
1146
1161
  elif name.endswith('.csv') and '竞店分析' in name and '来源分析-入店来源' in name:
1147
1162
  t_path = str(pathlib.Path(self.source_path, '市场数据/竞店分析/来源分析/入店来源'))
1148
1163
  bib(t_path, _as_month=False)
mdbq/config/products.py CHANGED
@@ -20,6 +20,9 @@ class Products:
20
20
 
21
21
  def update_my_datas(self):
22
22
  my_datas = [
23
+ {
24
+ '平台': '天猫', '商品id': '840499705810', '上市年份': '2024年10月'
25
+ },
23
26
  {
24
27
  '平台': '天猫', '商品id': '830789689032', '上市年份': '2024年9月'
25
28
  },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mdbq
3
- Version: 2.0.2
3
+ Version: 2.0.4
4
4
  Home-page: https://pypi.org/project/mdbsql
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -1,20 +1,20 @@
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=uaclXkIaZVhTqyI6VipI4Re7sXQDtlvVCopA_ONpcKM,73194
4
+ mdbq/aggregation/aggregation.py,sha256=DAwLaTJCqolPz3QNoQnmWb_DTLc0HtvjprhkO8vhVpE,73940
5
5
  mdbq/aggregation/df_types.py,sha256=U9i3q2eRPTDY8qAPTw7irzu-Tlg4CIySW9uYro81wdk,8125
6
6
  mdbq/aggregation/mysql_types.py,sha256=DQYROALDiwjJzjhaJfIIdnsrNs11i5BORlj_v6bp67Y,11062
7
7
  mdbq/aggregation/optimize_data.py,sha256=u2Kl_MFtZueXJ57ycy4H2OhXD431RctUYJYCl637uT0,4176
8
- mdbq/aggregation/query_data.py,sha256=ixvfjEai-zIN5fUiVg9nSFrzjiBfJv6QC9_mLTvFfg0,72380
8
+ mdbq/aggregation/query_data.py,sha256=qBNjGTxaQl6rg2-_jlJKGz_sop9UVgoNj5z75XGl_iQ,72379
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=BgOZlJwuv5X4BL24DOHC6XtMFspFD-AdCBC_EJJ9rjA,101382
12
+ mdbq/clean/data_clean.py,sha256=CTnybgn5mMGzQ5dKJ0Hh-iwV1qehbaBHRFtttX9AO1M,102758
13
13
  mdbq/company/__init__.py,sha256=qz8F_GsP_pMB5PblgJAUAMjasuZbOEp3qQOCB39E8f0,21
14
14
  mdbq/company/copysh.py,sha256=VUaaJPXPYPHWwnkdK77PWz_dAXZyEmYBA9Df1yROHAc,17764
15
15
  mdbq/config/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
16
16
  mdbq/config/get_myconf.py,sha256=cmNvsyoNa0RbZ9FOTjSd3jyyGwkxjUo0phvdHbGlrms,6010
17
- mdbq/config/products.py,sha256=vIK8DJ-F3XXwvNPK-4OJq2tZITNlL6Sub8QBdoOng8U,5676
17
+ mdbq/config/products.py,sha256=L1uhzdbqTprQg_rekKt0ucgpeIuMvi3H2v48_GZWPuY,5803
18
18
  mdbq/config/set_support.py,sha256=xkZCX6y9Bq1ppBpJAofld4B2YtchA7fl0eT3dx3CrSI,777
19
19
  mdbq/config/update_conf.py,sha256=taL3ZqKgiVWwUrDFuaYhim9a72Hm4BHRhhDscJTziR8,4535
20
20
  mdbq/dataframe/__init__.py,sha256=2HtCN8AdRj53teXDqzysC1h8aPL-mMFy561ESmhehGQ,22
@@ -36,7 +36,7 @@ mdbq/pbix/__init__.py,sha256=Trtfaynu9RjoTyLLYBN2xdRxTvm_zhCniUkVTAYwcjo,24
36
36
  mdbq/pbix/pbix_refresh.py,sha256=JUjKW3bNEyoMVfVfo77UhguvS5AWkixvVhDbw4_MHco,2396
37
37
  mdbq/pbix/refresh_all.py,sha256=0uAnBKCd5cx5FLTkawN1GV9yi87rfyMgYal5LABtumQ,7186
38
38
  mdbq/spider/__init__.py,sha256=RBMFXGy_jd1HXZhngB2T2XTvJqki8P_Fr-pBcwijnew,18
39
- mdbq-2.0.2.dist-info/METADATA,sha256=n4o0hi_JT0eYxpVVIGm-LZnSixtlu_Cc3BfLpdmoEL4,245
40
- mdbq-2.0.2.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
41
- mdbq-2.0.2.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
42
- mdbq-2.0.2.dist-info/RECORD,,
39
+ mdbq-2.0.4.dist-info/METADATA,sha256=JFnnucukEykE5vpzO7TcoA9fqXt3brI1pDJARIKn9wU,245
40
+ mdbq-2.0.4.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
41
+ mdbq-2.0.4.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
42
+ mdbq-2.0.4.dist-info/RECORD,,
File without changes