mdbq 2.5.0__py3-none-any.whl → 2.5.2__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.
@@ -2064,126 +2064,126 @@ def data_aggregation(service_databases=[{}], months=1, is_juhe=True):
2064
2064
 
2065
2065
  # 从数据库中获取数据, 返回包含 df 数据的字典
2066
2066
  data_dict = [
2067
- # {
2068
- # '数据库名': '聚合数据', # 清洗完回传的目的地数据库
2069
- # '集合名': '天猫_主体报表', # 清洗完回传的数据表名
2070
- # '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费'],
2071
- # '数据主体': sdq.tg_wxt(),
2072
- # },
2073
- # {
2074
- # '数据库名': '聚合数据',
2075
- # '集合名': '天猫生意经_宝贝指标',
2076
- # '唯一主键': ['日期', '宝贝id'], # 不能加其他字段做主键,比如销售额,是变动的,不是唯一的
2077
- # '数据主体': sdq.syj(),
2078
- # },
2079
- # {
2080
- # '数据库名': '聚合数据',
2081
- # '集合名': '天猫_店铺来源_日数据',
2082
- # '唯一主键': ['日期', '一级来源', '二级来源', '三级来源', '访客数'],
2083
- # '数据主体': sdq.dplyd(),
2084
- # },
2085
- # {
2086
- # '数据库名': '聚合数据',
2087
- # '集合名': '天猫_店铺来源_日数据_旧版',
2088
- # '唯一主键': ['日期', '一级来源', '二级来源', '三级来源'],
2089
- # '数据主体': sdq.dplyd_old(),
2090
- # },
2091
- # {
2092
- # '数据库名': '聚合数据',
2093
- # '集合名': '商品id编码表',
2094
- # '唯一主键': ['宝贝id'],
2095
- # '数据主体': sdq.idbm(),
2096
- # },
2097
- # {
2098
- # '数据库名': '聚合数据',
2099
- # '集合名': '商品id图片对照表',
2100
- # '唯一主键': ['商品id'],
2101
- # '数据主体': sdq.sp_picture(),
2102
- # },
2103
- # {
2104
- # '数据库名': '聚合数据',
2105
- # '集合名': '商品成本',
2106
- # '唯一主键': ['款号'],
2107
- # '数据主体': sdq.sp_cost(),
2108
- # },
2109
- # {
2110
- # '数据库名': '聚合数据',
2111
- # '集合名': '京东_京准通',
2112
- # '唯一主键': ['日期', '产品线', '触发sku id', '跟单sku id', '花费', ],
2113
- # '数据主体': sdq.jdjzt(),
2114
- # },
2115
- # {
2116
- # '数据库名': '聚合数据',
2117
- # '集合名': '京东_京准通_全站营销',
2118
- # '唯一主键': ['日期', '产品线', '花费'],
2119
- # '数据主体': sdq.jdqzyx(),
2120
- # },
2121
- # {
2122
- # '数据库名': '聚合数据',
2123
- # '集合名': '京东_sku_商品明细',
2124
- # '唯一主键': ['日期', '商品id', '成交单量'],
2125
- # '数据主体': sdq.sku_sales(),
2126
- # },
2127
- # {
2128
- # '数据库名': '聚合数据',
2129
- # '集合名': '京东_spu_商品明细',
2130
- # '唯一主键': ['日期', '商品id', '成交单量'],
2131
- # '数据主体': sdq.spu_sales(),
2132
- # },
2133
- # {
2134
- # '数据库名': '聚合数据',
2135
- # '集合名': '天猫_人群报表',
2136
- # '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费', '人群名字'],
2137
- # '数据主体': sdq.tg_rqbb(),
2138
- # },
2139
- # {
2140
- # '数据库名': '聚合数据',
2141
- # '集合名': '天猫_关键词报表',
2142
- # '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费', '词类型', '词名字/词包名字',],
2143
- # '数据主体': sdq.tg_gjc(),
2144
- # },
2145
- # {
2146
- # '数据库名': '聚合数据',
2147
- # '集合名': '天猫_超级直播',
2148
- # '唯一主键': ['日期', '推广渠道', '营销场景', '花费'],
2149
- # '数据主体': sdq.tg_cjzb(),
2150
- # },
2151
- # {
2152
- # '数据库名': '聚合数据',
2153
- # '集合名': '京东_关键词报表',
2154
- # '唯一主键': ['日期', '产品线', '搜索词', '关键词', '展现数', '花费'],
2155
- # '数据主体': sdq.jd_gjc(),
2156
- # },
2157
- # {
2158
- # '数据库名': '聚合数据',
2159
- # '集合名': '天猫_品销宝账户报表',
2160
- # '唯一主键': ['日期', '报表类型', '推广渠道', '营销场景', '花费'],
2161
- # '数据主体': sdq.pxb_zh(),
2162
- # },
2163
- # {
2164
- # '数据库名': '聚合数据',
2165
- # '集合名': '天猫店铺来源_手淘搜索',
2166
- # '唯一主键': ['日期', '关键词', '访客数'],
2167
- # '数据主体': sdq.tm_search(),
2168
- # },
2169
- # {
2170
- # '数据库名': '聚合数据',
2171
- # '集合名': '生意参谋_直播场次分析',
2172
- # '唯一主键': ['场次id'],
2173
- # '数据主体': sdq.zb_ccfx(),
2174
- # },
2175
- # {
2176
- # '数据库名': '聚合数据',
2177
- # '集合名': '多店推广场景_按日聚合',
2178
- # '唯一主键': [],
2179
- # '数据主体': sdq.tg_by_day(),
2180
- # },
2181
- # {
2182
- # '数据库名': '聚合数据',
2183
- # '集合名': '爱库存_商品spu榜单',
2184
- # '唯一主键': [],
2185
- # '数据主体': sdq.aikucun_bd_spu(),
2186
- # },
2067
+ {
2068
+ '数据库名': '聚合数据', # 清洗完回传的目的地数据库
2069
+ '集合名': '天猫_主体报表', # 清洗完回传的数据表名
2070
+ '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费'],
2071
+ '数据主体': sdq.tg_wxt(),
2072
+ },
2073
+ {
2074
+ '数据库名': '聚合数据',
2075
+ '集合名': '天猫生意经_宝贝指标',
2076
+ '唯一主键': ['日期', '宝贝id'], # 不能加其他字段做主键,比如销售额,是变动的,不是唯一的
2077
+ '数据主体': sdq.syj(),
2078
+ },
2079
+ {
2080
+ '数据库名': '聚合数据',
2081
+ '集合名': '天猫_店铺来源_日数据',
2082
+ '唯一主键': ['日期', '一级来源', '二级来源', '三级来源', '访客数'],
2083
+ '数据主体': sdq.dplyd(),
2084
+ },
2085
+ {
2086
+ '数据库名': '聚合数据',
2087
+ '集合名': '天猫_店铺来源_日数据_旧版',
2088
+ '唯一主键': ['日期', '一级来源', '二级来源', '三级来源'],
2089
+ '数据主体': sdq.dplyd_old(),
2090
+ },
2091
+ {
2092
+ '数据库名': '聚合数据',
2093
+ '集合名': '商品id编码表',
2094
+ '唯一主键': ['宝贝id'],
2095
+ '数据主体': sdq.idbm(),
2096
+ },
2097
+ {
2098
+ '数据库名': '聚合数据',
2099
+ '集合名': '商品id图片对照表',
2100
+ '唯一主键': ['商品id'],
2101
+ '数据主体': sdq.sp_picture(),
2102
+ },
2103
+ {
2104
+ '数据库名': '聚合数据',
2105
+ '集合名': '商品成本',
2106
+ '唯一主键': ['款号'],
2107
+ '数据主体': sdq.sp_cost(),
2108
+ },
2109
+ {
2110
+ '数据库名': '聚合数据',
2111
+ '集合名': '京东_京准通',
2112
+ '唯一主键': ['日期', '产品线', '触发sku id', '跟单sku id', '花费', ],
2113
+ '数据主体': sdq.jdjzt(),
2114
+ },
2115
+ {
2116
+ '数据库名': '聚合数据',
2117
+ '集合名': '京东_京准通_全站营销',
2118
+ '唯一主键': ['日期', '产品线', '花费'],
2119
+ '数据主体': sdq.jdqzyx(),
2120
+ },
2121
+ {
2122
+ '数据库名': '聚合数据',
2123
+ '集合名': '京东_sku_商品明细',
2124
+ '唯一主键': ['日期', '商品id', '成交单量'],
2125
+ '数据主体': sdq.sku_sales(),
2126
+ },
2127
+ {
2128
+ '数据库名': '聚合数据',
2129
+ '集合名': '京东_spu_商品明细',
2130
+ '唯一主键': ['日期', '商品id', '成交单量'],
2131
+ '数据主体': sdq.spu_sales(),
2132
+ },
2133
+ {
2134
+ '数据库名': '聚合数据',
2135
+ '集合名': '天猫_人群报表',
2136
+ '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费', '人群名字'],
2137
+ '数据主体': sdq.tg_rqbb(),
2138
+ },
2139
+ {
2140
+ '数据库名': '聚合数据',
2141
+ '集合名': '天猫_关键词报表',
2142
+ '唯一主键': ['日期', '推广渠道', '营销场景', '商品id', '花费', '词类型', '词名字/词包名字',],
2143
+ '数据主体': sdq.tg_gjc(),
2144
+ },
2145
+ {
2146
+ '数据库名': '聚合数据',
2147
+ '集合名': '天猫_超级直播',
2148
+ '唯一主键': ['日期', '推广渠道', '营销场景', '花费'],
2149
+ '数据主体': sdq.tg_cjzb(),
2150
+ },
2151
+ {
2152
+ '数据库名': '聚合数据',
2153
+ '集合名': '京东_关键词报表',
2154
+ '唯一主键': ['日期', '产品线', '搜索词', '关键词', '展现数', '花费'],
2155
+ '数据主体': sdq.jd_gjc(),
2156
+ },
2157
+ {
2158
+ '数据库名': '聚合数据',
2159
+ '集合名': '天猫_品销宝账户报表',
2160
+ '唯一主键': ['日期', '报表类型', '推广渠道', '营销场景', '花费'],
2161
+ '数据主体': sdq.pxb_zh(),
2162
+ },
2163
+ {
2164
+ '数据库名': '聚合数据',
2165
+ '集合名': '天猫店铺来源_手淘搜索',
2166
+ '唯一主键': ['日期', '关键词', '访客数'],
2167
+ '数据主体': sdq.tm_search(),
2168
+ },
2169
+ {
2170
+ '数据库名': '聚合数据',
2171
+ '集合名': '生意参谋_直播场次分析',
2172
+ '唯一主键': ['场次id'],
2173
+ '数据主体': sdq.zb_ccfx(),
2174
+ },
2175
+ {
2176
+ '数据库名': '聚合数据',
2177
+ '集合名': '多店推广场景_按日聚合',
2178
+ '唯一主键': [],
2179
+ '数据主体': sdq.tg_by_day(),
2180
+ },
2181
+ {
2182
+ '数据库名': '聚合数据',
2183
+ '集合名': '爱库存_商品spu榜单',
2184
+ '唯一主键': [],
2185
+ '数据主体': sdq.aikucun_bd_spu(),
2186
+ },
2187
2187
  {
2188
2188
  '数据库名': '聚合数据',
2189
2189
  '集合名': '达摩盘_人群报表',
mdbq/mysql/mysql.py CHANGED
@@ -684,13 +684,16 @@ class OptimizeDatas:
684
684
  duplicate_id = [] # 出现重复的 id
685
685
  all_datas = [] # 迭代器
686
686
  for data in datas:
687
- delete_id = data['id']
688
- del data['id']
689
- data = re.sub(r'\.0+\', ', '\', ', str(data)) # 统一移除小数点后面的 0
690
- if data in all_datas: # 数据出现重复时
691
- duplicate_id.append(delete_id) # 添加 id duplicate_id
692
- continue
693
- all_datas.append(data) # 数据没有重复
687
+ try:
688
+ delete_id = data['id']
689
+ del data['id']
690
+ data = re.sub(r'\.0+\', ', '\', ', str(data)) # 统一移除小数点后面的 0
691
+ if data in all_datas: # 数据出现重复时
692
+ duplicate_id.append(delete_id) # 添加 id 到 duplicate_id
693
+ continue
694
+ all_datas.append(data) # 数据没有重复
695
+ except Exception as e:
696
+ print(f'{table_name} 函数: mysql - > OptimizeDatas -> delete_duplicate -> {e}')
694
697
  del all_datas
695
698
 
696
699
  if not duplicate_id: # 如果没有重复数据,则跳过该数据表
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mdbq
3
- Version: 2.5.0
3
+ Version: 2.5.2
4
4
  Home-page: https://pypi.org/project/mdbsql
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -5,7 +5,7 @@ mdbq/aggregation/aggregation.py,sha256=nPp5fOLktxejNEak3SyTnKLjwzK1l2xjbV45X-I4L
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=Wis40oL04M7E1pkvgNPjyVFAUe-zgjimjIVAikxYY8Y,4418
8
- mdbq/aggregation/query_data.py,sha256=65ulg_i5bNb4RXjtBCDKgRSKXLJJd9bb16j0EbdFVXo,103875
8
+ mdbq/aggregation/query_data.py,sha256=WKe42Xq1Gi-ELuIT0k2jh3X4-R7heb0ub3Mj3yuCRAk,103635
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
@@ -25,7 +25,7 @@ mdbq/log/mylogger.py,sha256=oaT7Bp-Hb9jZt52seP3ISUuxVcI19s4UiqTeouScBO0,3258
25
25
  mdbq/mongo/__init__.py,sha256=SILt7xMtQIQl_m-ik9WLtJSXIVf424iYgCfE_tnQFbw,13
26
26
  mdbq/mongo/mongo.py,sha256=v9qvrp6p1ZRWuPpbSilqveiE0FEcZF7U5xUPI0RN4xs,31880
27
27
  mdbq/mysql/__init__.py,sha256=A_DPJyAoEvTSFojiI2e94zP0FKtCkkwKP1kYUCSyQzo,11
28
- mdbq/mysql/mysql.py,sha256=ZJ5hrwB-oJgvfcTI9Y2E_vwmCNgbxmiU0AJLeCfQFJ8,46850
28
+ mdbq/mysql/mysql.py,sha256=39323KfZxN5DRyXhBEv5Hgw4TkzBs0wm0lMN1uYsE9A,47028
29
29
  mdbq/mysql/s_query.py,sha256=37GGHzRpycfUjsYEoQgDpdEs9JwjW-LxFXnGwwP2b2Q,8403
30
30
  mdbq/mysql/year_month_day.py,sha256=VgewoE2pJxK7ErjfviL_SMTN77ki8GVbTUcao3vFUCE,1523
31
31
  mdbq/other/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
@@ -41,7 +41,7 @@ mdbq/req_post/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
41
41
  mdbq/req_post/req_tb.py,sha256=PexWSCPJNM6Tv0ol4lAWIhlOwsAr_frnjtcdSHCFiek,36179
42
42
  mdbq/spider/__init__.py,sha256=RBMFXGy_jd1HXZhngB2T2XTvJqki8P_Fr-pBcwijnew,18
43
43
  mdbq/spider/aikucun.py,sha256=KdihSB3q44jsXUQAldfWRVfCSrEw2MNbM-_BhP_29g4,14448
44
- mdbq-2.5.0.dist-info/METADATA,sha256=TMjdFAFFDBDfOiCXJ9fafyYlA4V71QedBfcoUPkiZjM,245
45
- mdbq-2.5.0.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
46
- mdbq-2.5.0.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
47
- mdbq-2.5.0.dist-info/RECORD,,
44
+ mdbq-2.5.2.dist-info/METADATA,sha256=2L1Je6HYvOl0yPoWad5rjvUVRDb53nP6a8GrLIO3Qwc,245
45
+ mdbq-2.5.2.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
46
+ mdbq-2.5.2.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
47
+ mdbq-2.5.2.dist-info/RECORD,,
File without changes