mdbq 1.4.9__tar.gz → 1.5.1__tar.gz
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-1.4.9 → mdbq-1.5.1}/PKG-INFO +1 -1
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/aggregation.py +31 -9
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/query_data.py +1 -1
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/company/copysh.py +2 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/config/products.py +38 -13
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq.egg-info/PKG-INFO +1 -1
- {mdbq-1.4.9 → mdbq-1.5.1}/setup.py +1 -1
- {mdbq-1.4.9 → mdbq-1.5.1}/README.txt +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/__version__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/df_types.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/mysql_types.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/aggregation/optimize_data.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/bdup/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/bdup/bdup.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/clean/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/clean/data_clean.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/company/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/config/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/config/get_myconf.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/config/set_support.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/config/update_conf.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/dataframe/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/dataframe/converter.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/log/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/log/mylogger.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mongo/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mongo/mongo.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mysql/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mysql/mysql.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mysql/s_query.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/mysql/year_month_day.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/other/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/other/porxy.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/other/pov_city.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/other/ua_sj.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/pbix/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/pbix/pbix_refresh.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/pbix/refresh_all.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq/spider/__init__.py +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq.egg-info/SOURCES.txt +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq.egg-info/dependency_links.txt +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/mdbq.egg-info/top_level.txt +0 -0
- {mdbq-1.4.9 → mdbq-1.5.1}/setup.cfg +0 -0
@@ -833,6 +833,35 @@ class DatabaseUpdate:
|
|
833
833
|
)
|
834
834
|
# return df
|
835
835
|
|
836
|
+
def other_table(self, service_databases=[{'home_lx': 'mysql'}]):
|
837
|
+
""" 上传 support 文件夹下的 主推商品.csv """
|
838
|
+
support_file = set_support.SetSupport(dirname='support').dirname
|
839
|
+
filename = '主推商品.csv'
|
840
|
+
if not os.path.isfile(os.path.join(support_file, filename)):
|
841
|
+
return
|
842
|
+
df = pd.read_csv(os.path.join(support_file, filename), encoding='utf-8_sig', header=0, na_filter=False)
|
843
|
+
for service_database in service_databases:
|
844
|
+
for service_name, database in service_database.items():
|
845
|
+
username, password, host, port = get_myconf.select_config_values(
|
846
|
+
target_service=service_name,
|
847
|
+
database=database,
|
848
|
+
)
|
849
|
+
m = mysql.MysqlUpload(
|
850
|
+
username=username,
|
851
|
+
password=password,
|
852
|
+
host=host,
|
853
|
+
port=port,
|
854
|
+
)
|
855
|
+
m.df_to_mysql(
|
856
|
+
df=df,
|
857
|
+
db_name='属性设置2',
|
858
|
+
table_name='主推商品',
|
859
|
+
df_sql=False, # 值为 True 时使用 df.to_sql 函数上传整个表, 不会排重
|
860
|
+
drop_duplicates=True, # 值为 True 时检查重复数据再插入,反之直接上传,会比较慢
|
861
|
+
filename=None, # 用来追踪处理进度
|
862
|
+
system_name=service_name, # 用来追踪处理进度
|
863
|
+
)
|
864
|
+
|
836
865
|
|
837
866
|
def upload_dir(path, db_name, collection_name, dbs={'mysql': True, 'mongodb': True}, json_path=None, system_name=None):
|
838
867
|
""" 上传一个文件夹到 mysql 或者 mongodb 数据库 """
|
@@ -1032,12 +1061,5 @@ if __name__ == '__main__':
|
|
1032
1061
|
|
1033
1062
|
# test2()
|
1034
1063
|
|
1035
|
-
|
1036
|
-
|
1037
|
-
username, password, host, port = get_myconf.select_config_values(target_service='company', database='mysql')
|
1038
|
-
m = mysql.MysqlUpload(username=username, password=password, host=host, port=port)
|
1039
|
-
m.df_to_mysql(df=df, db_name='市场数据2', table_name='搜索排行',
|
1040
|
-
drop_duplicates=True,
|
1041
|
-
# icm_update=['日期', '推广费余额'],
|
1042
|
-
system_name='company',
|
1043
|
-
)
|
1064
|
+
dp = DatabaseUpdate(path='')
|
1065
|
+
dp.other_table(service_databases=[{'company': 'mysql'}])
|
@@ -722,5 +722,5 @@ def data_aggregation(service_databases=[{}], months=1, system_name=None,):
|
|
722
722
|
|
723
723
|
if __name__ == '__main__':
|
724
724
|
# data_aggregation(service_databases=[{'home_lx': 'mysql'}], months=1, system_name='home_lx')
|
725
|
-
data_aggregation_one(service_databases=[{'company': 'mysql'}], months=
|
725
|
+
data_aggregation_one(service_databases=[{'company': 'mysql'}], months=1, system_name='company')
|
726
726
|
# optimize_data.op_data(service_databases=[{'company': 'mysql'}], days=3650) # 立即启动对聚合数据的清理工作
|
@@ -18,6 +18,7 @@ from mdbq.aggregation import optimize_data
|
|
18
18
|
from mdbq.config import update_conf
|
19
19
|
from mdbq.config import get_myconf
|
20
20
|
from mdbq.config import set_support
|
21
|
+
from mdbq.config import products
|
21
22
|
from mdbq.mysql import mysql
|
22
23
|
warnings.filterwarnings('ignore')
|
23
24
|
|
@@ -348,6 +349,7 @@ def main():
|
|
348
349
|
dp.cleaning(is_move=True) # 公司台式机需要移除自身下载的文件
|
349
350
|
dp.upload_df(service_databases=[{'company': 'mysql'}], system_name='company')
|
350
351
|
dp.date_table(service_databases=[{'company': 'mysql'}]) # 因为日期表不受 days 参数控制,因此单独更新日期表
|
352
|
+
dp.other_table(service_databases=[{'company': 'mysql'}]) # 上传 support 文件夹下的 主推商品.csv
|
351
353
|
|
352
354
|
# 此操作用于修改 .copysh_conf 文件,将 ch_record 改为 false (更新完成)
|
353
355
|
w = update_conf.UpdateConf()
|
@@ -6,8 +6,11 @@ import getpass
|
|
6
6
|
import pandas as pd
|
7
7
|
from mdbq.mysql import mysql
|
8
8
|
from mdbq.config import get_myconf
|
9
|
+
from numpy.ma.core import product
|
10
|
+
|
9
11
|
"""
|
10
12
|
天猫货品年份基准对照
|
13
|
+
用于聚合数据,通过此数据表进一步可确定商品上架年月
|
11
14
|
"""
|
12
15
|
|
13
16
|
|
@@ -101,20 +104,39 @@ class Products:
|
|
101
104
|
]
|
102
105
|
self.datas += my_datas
|
103
106
|
|
104
|
-
def to_mysql(self,):
|
107
|
+
def to_mysql(self, service_databases=[{'home_lx': 'mysql'}]):
|
105
108
|
self.update_my_datas()
|
106
109
|
df = pd.DataFrame(self.datas)
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
110
|
+
for service_database in service_databases:
|
111
|
+
for service_name, database in service_database.items():
|
112
|
+
username, password, host, port = get_myconf.select_config_values(
|
113
|
+
target_service=service_name,
|
114
|
+
database=database,
|
115
|
+
)
|
116
|
+
m = mysql.MysqlUpload(
|
117
|
+
username=username,
|
118
|
+
password=password,
|
119
|
+
host=host,
|
120
|
+
port=port,
|
121
|
+
)
|
122
|
+
m.df_to_mysql(
|
123
|
+
df=df,
|
124
|
+
db_name='属性设置2',
|
125
|
+
table_name='货品年份基准',
|
126
|
+
df_sql=False, # 值为 True 时使用 df.to_sql 函数上传整个表, 不会排重
|
127
|
+
drop_duplicates=True, # 值为 True 时检查重复数据再插入,反之直接上传,会比较慢
|
128
|
+
system_name=service_name, # 用来追踪处理进度
|
129
|
+
)
|
130
|
+
|
131
|
+
def market_date(self, product_id: int):
|
132
|
+
try:
|
133
|
+
product_id = int(product_id)
|
134
|
+
except:
|
135
|
+
return
|
136
|
+
self.update_my_datas()
|
137
|
+
market_date = [item['上市年份'] for item in self.datas if product_id > int(item['商品id'])]
|
138
|
+
if market_date:
|
139
|
+
return market_date[0] # 返回上市年份
|
118
140
|
|
119
141
|
|
120
142
|
def main():
|
@@ -122,5 +144,8 @@ def main():
|
|
122
144
|
|
123
145
|
|
124
146
|
if __name__ == '__main__':
|
147
|
+
product_id = '696017020186'
|
125
148
|
p = Products()
|
126
|
-
p.to_mysql()
|
149
|
+
# p.to_mysql(service_databases=[{'home_lx': 'mysql'}, {'company': 'mysql'}])
|
150
|
+
year = p.market_date(product_id=product_id)
|
151
|
+
print(year)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|