mdbq 3.8.16__py3-none-any.whl → 3.8.17__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 = '3.8.16'
1
+ VERSION = '3.8.17'
mdbq/mysql/mysql.py CHANGED
@@ -659,7 +659,7 @@ class MysqlUpload:
659
659
  if col_not_exist: # 数据表中不存在的列
660
660
  for col in col_not_exist:
661
661
  # 创建列,需转义
662
- ialter_sql = f"ALTER TABLE `{table_name}` ADD COLUMN `{col}` {dtypes[col]}"
662
+ alter_sql = f"ALTER TABLE `{table_name}` ADD COLUMN `{col}` {dtypes[col]}"
663
663
  if not allow_not_null:
664
664
  alter_sql += " NOT NULL"
665
665
  cursor.execute(alter_sql)
mdbq/other/otk.py CHANGED
@@ -6,6 +6,25 @@ import pandas as pd
6
6
  import numpy as np
7
7
  from mdbq.other import ua_sj
8
8
  import requests
9
+ from collections.abc import Mapping
10
+
11
+
12
+ def safe_get(d, keys, default=None):
13
+ """
14
+ 安全获取嵌套字典值
15
+ data = {"user": {"profile": {"name": "Alice"}}}
16
+ result = safe_get(data, ["user", "profile", "name"], "Unknown")
17
+ print(result) # 输出: "Alice"
18
+ """
19
+ if not keys:
20
+ return default
21
+ if not isinstance(d, Mapping):
22
+ return default
23
+ for key in keys:
24
+ d = d.get(key, default)
25
+ if not isinstance(d, Mapping):
26
+ break
27
+ return d if d is not None else default
9
28
 
10
29
 
11
30
  def get_public_ip():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mdbq
3
- Version: 3.8.16
3
+ Version: 3.8.17
4
4
  Home-page: https://pypi.org/project/mdbq
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -1,5 +1,5 @@
1
1
  mdbq/__init__.py,sha256=Il5Q9ATdX8yXqVxtP_nYqUhExzxPC_qk_WXQ_4h0exg,16
2
- mdbq/__version__.py,sha256=VUh6syxyz3BeTHjQrrlUgLdyX1-2SRQdP5locYySmCQ,18
2
+ mdbq/__version__.py,sha256=aQqk3fm02Lh5RFRCUZaUAkopSlA6FJvldW6SOv6sV_I,18
3
3
  mdbq/aggregation/__init__.py,sha256=EeDqX2Aml6SPx8363J-v1lz0EcZtgwIBYyCJV6CcEDU,40
4
4
  mdbq/aggregation/query_data.py,sha256=5_OzjGR5Sq00q-EgAYmSE5V9i4Solw9y4hkldl4mvt8,179808
5
5
  mdbq/config/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
@@ -7,11 +7,11 @@ mdbq/config/config.py,sha256=eaTfrfXQ65xLqjr5I8-HkZd_jEY1JkGinEgv3TSLeoQ,3170
7
7
  mdbq/log/__init__.py,sha256=Mpbrav0s0ifLL7lVDAuePEi1hJKiSHhxcv1byBKDl5E,15
8
8
  mdbq/log/spider_logging.py,sha256=-ozWWEGm3HVv604ozs_OOvVwumjokmUPwbaodesUrPY,1664
9
9
  mdbq/mysql/__init__.py,sha256=A_DPJyAoEvTSFojiI2e94zP0FKtCkkwKP1kYUCSyQzo,11
10
- mdbq/mysql/mysql.py,sha256=4N6srlRYomoSHdK4Y84fxkIW_eL5xFkb3Jo06sebSi0,55031
10
+ mdbq/mysql/mysql.py,sha256=umcLpw5cYGNNJnEjBLh_bgBXeh5LntPKFm8VslQ01ow,55030
11
11
  mdbq/mysql/s_query.py,sha256=X055aLRAgxVvueXx4NbfNjp6MyBI02_XBb1pTKw09L0,8660
12
12
  mdbq/other/__init__.py,sha256=jso1oHcy6cJEfa7udS_9uO5X6kZLoPBF8l3wCYmr5dM,18
13
13
  mdbq/other/download_sku_picture.py,sha256=YU8DxKMXbdeE1OOKEA848WVp62jYHw5O4tXTjUdq9H0,44832
14
- mdbq/other/otk.py,sha256=i8Eomxk7i3tU41Pv_dbFCo8ghZ1dQsMJVRp3ZWVtCY8,6710
14
+ mdbq/other/otk.py,sha256=iclBIFbQbhlqzUbcMMoePXBpcP1eZ06ZtjnhcA_EbmE,7241
15
15
  mdbq/other/pov_city.py,sha256=AEOmCOzOwyjHi9LLZWPKi6DUuSC-_M163664I52u9qw,21050
16
16
  mdbq/other/ua_sj.py,sha256=JuVYzc_5QZ9s_oQSrTHVKkQv4S_7-CWx4oIKOARn_9U,22178
17
17
  mdbq/pbix/__init__.py,sha256=Trtfaynu9RjoTyLLYBN2xdRxTvm_zhCniUkVTAYwcjo,24
@@ -21,7 +21,7 @@ mdbq/redis/__init__.py,sha256=YtgBlVSMDphtpwYX248wGge1x-Ex_mMufz4-8W0XRmA,12
21
21
  mdbq/redis/getredis.py,sha256=Uk8-cOWT0JU1qRyIVqdbYokSLvkDIAfcokmYj1ebw8k,24104
22
22
  mdbq/spider/__init__.py,sha256=RBMFXGy_jd1HXZhngB2T2XTvJqki8P_Fr-pBcwijnew,18
23
23
  mdbq/spider/aikucun.py,sha256=m7ZIvrc9pqoGCYEH3FtgKTwqhX7QB6qzgc2twDzhX4w,19962
24
- mdbq-3.8.16.dist-info/METADATA,sha256=TS9KZw82-cE9gTPtfKSLzhwWzda-8ZnZ6384Vm0xU4I,364
25
- mdbq-3.8.16.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
26
- mdbq-3.8.16.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
27
- mdbq-3.8.16.dist-info/RECORD,,
24
+ mdbq-3.8.17.dist-info/METADATA,sha256=JBj7nndNZi2F8KR7sX3sAJoTMPA-nYGKCLDP7VBxqfc,364
25
+ mdbq-3.8.17.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
26
+ mdbq-3.8.17.dist-info/top_level.txt,sha256=2FQ-uLnCSB-OwFiWntzmwosW3X2Xqsg0ewh1axsaylA,5
27
+ mdbq-3.8.17.dist-info/RECORD,,
File without changes