mdbq 4.0.49__py3-none-any.whl → 4.0.51__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/__version__.py CHANGED
@@ -1 +1 @@
1
- VERSION = '4.0.49'
1
+ VERSION = '4.0.51'
@@ -244,8 +244,8 @@ class MysqlDatasQuery:
244
244
  df_real_sales = self._get_real_sales(shop_list=shop_list)
245
245
  df_shop_gmv = self._get_shop_gmv(shop_list=shop_list)
246
246
  df_tg_data = self._get_tg_data(shop_list=shop_list)
247
- df = df_shop_gmv.merge(df_real_sales, on=['日期', '店铺名称'], how='left')
248
- df = df.merge(df_tg_data, on=['日期', '店铺名称'], how='left')
247
+ df = df_shop_gmv.merge(df_real_sales, on=['日期', '店铺名称'], how='outer') # 平台数据合并销售数据
248
+ df = df.merge(df_tg_data, on=['日期', '店铺名称'], how='outer') # 合并推广数据
249
249
  df.fillna(0, inplace=True)
250
250
  set_typ = SET_TYP_DICT[f'{db_name}_{table_name}']
251
251
  return df, {
@@ -266,7 +266,7 @@ class MysqlDatasQuery:
266
266
 
267
267
  def _get_tg_data(self, db_name='聚合数据', table_name='多店推广场景_按日聚合', shop_list:dict=None):
268
268
  start_date, end_date = self.months_data(num=self.months)
269
- projection = ['日期', '店铺名称', '营销场景', '花费', '成交金额']
269
+ projection = ['日期', '店铺名称', '营销场景', '花费']
270
270
  df = self.download_manager.data_to_df(
271
271
  db_name=db_name,
272
272
  table_name=table_name,
@@ -275,14 +275,13 @@ class MysqlDatasQuery:
275
275
  projection=projection,
276
276
  )
277
277
  if df.empty:
278
- return pd.DataFrame(columns=['日期', '店铺名称', '实际消耗', '推广成交金额'])
278
+ return pd.DataFrame(columns=['日期', '店铺名称', '实际消耗'])
279
279
  df = df[(df['店铺名称'].isin(shop_list.keys()))]
280
280
  df = df.astype({
281
281
  '日期': 'datetime64[ns]',
282
282
  '花费': 'float64',
283
- '成交金额': 'float64'
284
283
  })
285
- df = df.groupby(['日期', '店铺名称'], as_index=False).agg({'花费': 'sum', '成交金额': 'sum'}).rename(columns={'花费': '实际消耗', '成交金额': '推广成交金额'})
284
+ df = df.groupby(['日期', '店铺名称'], as_index=False).agg({'花费': 'sum'}).rename(columns={'花费': '实际消耗'})
286
285
  df['店铺名称'] = df['店铺名称'].map(shop_list)
287
286
  return df
288
287
 
@@ -351,8 +350,33 @@ class MysqlDatasQuery:
351
350
  }).rename(
352
351
  columns={'商店名称': '店铺名称', '验收日期': '日期', '金额': '实际营收'}
353
352
  )
353
+ df_ziying_sales = self._get_ziying_sales(shop_list=shop_list)
354
+ df = pd.concat([df, df_ziying_sales], ignore_index=True) # e3 合并京东自营业绩
354
355
  return df
355
356
 
357
+ def _get_ziying_sales(self, db_name='京东数据3', table_name='京东自营_vc品牌业绩', shop_list:dict=None):
358
+ """获取京东自营业绩"""
359
+ start_date, end_date = self.months_data(num=self.months)
360
+ projection = ['日期', '店铺名称', '收入']
361
+ df = self.download_manager.data_to_df(
362
+ db_name=db_name,
363
+ table_name=table_name,
364
+ start_date=start_date,
365
+ end_date=end_date,
366
+ projection=projection,
367
+ )
368
+ if df.empty:
369
+ return pd.DataFrame(columns=['日期', '店铺名称', '收入'])
370
+ df = df[(df['店铺名称'].isin(shop_list.keys()))]
371
+ df = df.astype({
372
+ '日期': 'datetime64[ns]',
373
+ '收入': 'float64'
374
+ })
375
+ df = df.groupby(['日期', '店铺名称'], as_index=False).agg({'收入': 'sum'}).rename(columns={'收入': '实际营收'})
376
+ df['店铺名称'] = df['店铺名称'].map(shop_list)
377
+ return df
378
+
379
+
356
380
  # @error_handler.log_on_exception(logger=logger)
357
381
  def tg_wxt(self, db_name='聚合数据', table_name='天猫_主体报表', is_maximize=True):
358
382
  start_date, end_date = self.months_data(num=self.months)
@@ -2655,7 +2679,7 @@ class MysqlDatasQuery:
2655
2679
  projection = {}
2656
2680
  df = self.download_manager.data_to_df(
2657
2681
  db_name='爱库存2',
2658
- table_name='spu榜单',
2682
+ table_name='爱库存_spu榜单',
2659
2683
  start_date=start_date,
2660
2684
  end_date=end_date,
2661
2685
  projection=projection,
@@ -3323,7 +3347,7 @@ def query2(months=1, download_manager=None):
3323
3347
  sdq.tg_gjc(db_name='聚合数据', table_name='天猫_关键词报表')
3324
3348
  sdq.jd_gjc(db_name='聚合数据', table_name='京东_关键词报表')
3325
3349
  sdq.se_search(db_name='聚合数据', table_name='天猫店铺来源_手淘搜索')
3326
- sdq.aikucun_bd_spu(db_name='聚合数据', table_name='爱库存_商品spu榜单')
3350
+ # sdq.aikucun_bd_spu(db_name='聚合数据', table_name='爱库存_商品spu榜单')
3327
3351
  sdq.dmp_crowd(db_name='聚合数据', table_name='达摩盘_人群报表')
3328
3352
  sdq.deeplink(db_name='聚合数据', table_name='达摩盘_deeplink人群洞察')
3329
3353
  sdq.global_insights(db_name='聚合数据', table_name='全域洞察')
@@ -573,12 +573,12 @@ SET_TYP_DICT = {
573
573
  '聚合数据_多店聚合_日报': {
574
574
  '日期': 'date',
575
575
  '店铺名称': 'varchar(255)',
576
+ '实际营收': 'decimal(12,2)',
577
+ '支付金额': 'decimal(12,2)',
576
578
  '访客数': 'int',
577
579
  '浏览量': 'int',
578
- '支付金额': 'decimal(12,2)',
579
580
  '支付买家数': 'int',
580
581
  '支付件数': 'int',
581
- '实际营收': 'decimal(12,2)',
582
582
  '实际消耗': 'decimal(10,2)',
583
583
  '推广成交金额': 'decimal(12,2)',
584
584
  },
mdbq/spider/aikucun.py CHANGED
@@ -212,6 +212,7 @@ class AikuCun:
212
212
  """
213
213
  这里获取的数据等同于"查询"按钮的数据, 没有"营销后供货额/供货价" 这2个字段, 如果通过下载按钮的报表则有两个字段
214
214
  """
215
+ item_type = re.sub('爱库存_', '', item_type)
215
216
  if start_date:
216
217
  self.start_date = start_date
217
218
  if end_date:
@@ -480,7 +481,7 @@ class AikuCun:
480
481
  )
481
482
 
482
483
 
483
- def main(start_date, end_date=None, item_type=['spu']):
484
+ def main(start_date, end_date=None, item_type=['爱库存_spu']):
484
485
  db_config = {
485
486
  'username': username,
486
487
  'password': password,
@@ -493,7 +494,7 @@ def main(start_date, end_date=None, item_type=['spu']):
493
494
  ak = AikuCun(uld_manager=uld, download_manager=download)
494
495
  # ak.get_sign()
495
496
  for type_ in item_type:
496
- if type_ not in ['spu', 'sku']:
497
+ if type_ not in ['爱库存_spu', '爱库存_sku']:
497
498
  logger.error(f'{item_type} 非法参数: {type_}')
498
499
  continue
499
500
  for i in range(2):
@@ -518,13 +519,12 @@ def main(start_date, end_date=None, item_type=['spu']):
518
519
  )
519
520
 
520
521
 
521
-
522
522
  if __name__ == '__main__':
523
523
  main(
524
524
  start_date='2025-05-13',
525
525
  # end_date='2025-04-28', # 不传则默认到今天
526
526
  item_type=[
527
- 'spu',
528
- 'sku'
527
+ '爱库存_spu',
528
+ '爱库存_sku'
529
529
  ]
530
530
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mdbq
3
- Version: 4.0.49
3
+ Version: 4.0.51
4
4
  Home-page: https://pypi.org/project/mdbq
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -1,8 +1,8 @@
1
1
  mdbq/__init__.py,sha256=Il5Q9ATdX8yXqVxtP_nYqUhExzxPC_qk_WXQ_4h0exg,16
2
- mdbq/__version__.py,sha256=w0_qnEcOXc78a1VMuCkzhCyb88nMzAB5go-JLIBhX64,18
2
+ mdbq/__version__.py,sha256=BM7d-S3JyI_exrIOENOPbUS0DmkGJNFKr_pNt9dvElM,18
3
3
  mdbq/aggregation/__init__.py,sha256=EeDqX2Aml6SPx8363J-v1lz0EcZtgwIBYyCJV6CcEDU,40
4
- mdbq/aggregation/query_data.py,sha256=B6ibvZidou8u7RL5-9jWxufbLNiHD66n2-OtlbVFPqs,156119
5
- mdbq/aggregation/set_typ_dict.py,sha256=5qyagMloGAxlk3ORcmmgyWbEcc464vfE0kbrvCm-44k,21078
4
+ mdbq/aggregation/query_data.py,sha256=83-CR2jFFrMJMwkuZm43Kn7P3mjTvjP6i4Av6eEudT8,157236
5
+ mdbq/aggregation/set_typ_dict.py,sha256=Cax8i6My6xuTC8l-eB0AJ-kOZQwPRcZj-P9dhiiaTj0,21078
6
6
  mdbq/log/__init__.py,sha256=Mpbrav0s0ifLL7lVDAuePEi1hJKiSHhxcv1byBKDl5E,15
7
7
  mdbq/log/mylogger.py,sha256=kPe3wsQNaB1slfX-Z7VMqzZoMoqPfc7ylYXZDBeFzzI,24945
8
8
  mdbq/myconf/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
@@ -25,8 +25,8 @@ mdbq/pbix/refresh_all.py,sha256=OBT9EewSZ0aRS9vL_FflVn74d4l2G00wzHiikCC4TC0,5926
25
25
  mdbq/redis/__init__.py,sha256=YtgBlVSMDphtpwYX248wGge1x-Ex_mMufz4-8W0XRmA,12
26
26
  mdbq/redis/getredis.py,sha256=vpBuNc22uj9Vr-_Dh25_wpwWM1e-072EAAIBdB_IpL0,23494
27
27
  mdbq/spider/__init__.py,sha256=RBMFXGy_jd1HXZhngB2T2XTvJqki8P_Fr-pBcwijnew,18
28
- mdbq/spider/aikucun.py,sha256=XptHjGzbout9IYzWAOQUpMMV5qEgLTU8pL1ZGt8oNEA,21868
29
- mdbq-4.0.49.dist-info/METADATA,sha256=D8fJ0YmRPlGs31kbXNfuDPE7-klblLbg2B_9ugGYfuQ,364
30
- mdbq-4.0.49.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
31
- mdbq-4.0.49.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
32
- mdbq-4.0.49.dist-info/RECORD,,
28
+ mdbq/spider/aikucun.py,sha256=AR4_eT7TY_M5SyFfU0DvM8-InWf7jAu4jGnroMXk-Q0,21973
29
+ mdbq-4.0.51.dist-info/METADATA,sha256=rGKL_Z4q25_RxubqDhYiUYZeU9p4Bsnsdan-_3m0hrM,364
30
+ mdbq-4.0.51.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
31
+ mdbq-4.0.51.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
32
+ mdbq-4.0.51.dist-info/RECORD,,
File without changes