smartpush 1.2.4__tar.gz → 1.2.6__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.
- {smartpush-1.2.4 → smartpush-1.2.6}/PKG-INFO +1 -1
- {smartpush-1.2.4 → smartpush-1.2.6}/README.md +1 -1
- {smartpush-1.2.4 → smartpush-1.2.6}/setup.py +1 -1
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/export/basic/ReadExcel.py +4 -3
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/test.py +10 -10
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush.egg-info/PKG-INFO +1 -1
- {smartpush-1.2.4 → smartpush-1.2.6}/setup.cfg +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/__init__.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/export/__init__.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/export/basic/ExcelExportChecker.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/export/basic/GetOssUrl.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/export/basic/__init__.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/get_jira_info.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/utils/StringUtils.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush/utils/__init__.py +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush.egg-info/SOURCES.txt +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush.egg-info/dependency_links.txt +0 -0
- {smartpush-1.2.4 → smartpush-1.2.6}/smartpush.egg-info/top_level.txt +0 -0
@@ -33,5 +33,5 @@ assert result
|
|
33
33
|
```
|
34
34
|
## check_excel_all() 支持拓展参数
|
35
35
|
### check_type = "including" 如果需要预期结果包含可传 eg.联系人导出场景可用
|
36
|
-
### ignore_sort =
|
36
|
+
### ignore_sort = 0 如果需要忽略内部的行排序问题可传,eg.email热点点击数据导出无排序可用,传指定第几列,0是第一列
|
37
37
|
### skiprows = 1 传1可忽略第一行, eg.如flow的导出可用,动态表头不固定时可以跳过读取第一行
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import csv
|
2
2
|
import io
|
3
|
+
import json
|
3
4
|
import os
|
4
5
|
import re
|
5
6
|
import warnings
|
@@ -94,15 +95,15 @@ def read_excel_and_write_to_dict(excel_data=None, file_name=None, **kwargs):
|
|
94
95
|
row_dict = {} # 创建一个空字典来存储按行转换的数据
|
95
96
|
for sheet_name, row in dfs.items():
|
96
97
|
row = row.to_dict(orient='records')
|
97
|
-
if kwargs.get("ignore_sort"
|
98
|
-
sorted_data_asc = sorted(row[1:], key=lambda x: x
|
98
|
+
if kwargs.get("ignore_sort") is not None:
|
99
|
+
sorted_data_asc = sorted(row[1:], key=lambda x: x.get(kwargs.get("ignore_sort"), 0),
|
100
|
+
reverse=True) # 内部排序
|
99
101
|
sorted_data_asc = [row[0]] + sorted_data_asc
|
100
102
|
row_dict[sheet_name] = sorted_data_asc
|
101
103
|
else:
|
102
104
|
row_dict[sheet_name] = row
|
103
105
|
else:
|
104
106
|
row_dict = dfs.to_dict()
|
105
|
-
print(row_dict)
|
106
107
|
return row_dict
|
107
108
|
except zipfile.BadZipFile:
|
108
109
|
print(f"文件读取错误,请检查文件是否为无效文件:{dfs}")
|
@@ -10,16 +10,16 @@ from smartpush.export.basic.ReadExcel import read_excel_and_write_to_dict
|
|
10
10
|
from smartpush.export.basic.GetOssUrl import get_oss_address_with_retry
|
11
11
|
|
12
12
|
if __name__ == '__main__':
|
13
|
-
oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-
|
14
|
-
oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-
|
13
|
+
oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-25/58c4a3a885884741b22380c360ac2894/【自动化导出】营销活动URL点击与热图.xlsx"
|
14
|
+
oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/a5e18e3b3a83432daca871953cb8471b/【自动化导出】营销活动URL点击与热图.xlsx"
|
15
15
|
# # print(check_excel_all(oss1, oss1))
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
16
|
+
oss3 = "https://cdn.smartpushedm.com/material_ec2/2025-02-25/58c4a3a885884741b22380c360ac2894/【自动化导出】营销活动URL点击与热图.xlsx"
|
17
|
+
oss4 = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/58cee630b4c84eec9572b867af4ce692/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8URL%E7%82%B9%E5%87%BB%E4%B8%8E%E7%83%AD%E5%9B%BE.xlsx"
|
18
|
+
expected_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
19
|
+
actual_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
20
20
|
|
21
|
-
|
22
|
-
|
21
|
+
e_person_oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/b48f34b3e88045d189631ec1f0f23d51/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
22
|
+
a_person_oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/c50519d803c04e3b9b52d9f625fed413/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
23
23
|
|
24
24
|
# # #actual_oss= get_oss_address_with_retry("23161","https://cdn.smartpushedm.com/material_ec2_prod/2025-02-20/dae941ec20964ca5b106407858676f89/%E7%BE%A4%E7%BB%84%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx","",'{"page":1,"pageSize":10,"type":null,"status":null,"startTime":null,"endTime":null}')
|
25
25
|
# # res=read_excel_and_write_to_dict(read_excel_from_oss(actual_oss))
|
@@ -27,7 +27,7 @@ if __name__ == '__main__':
|
|
27
27
|
# # print(read_excel_and_write_to_dict(read_excel_from_oss(oss1), type=".xlsx"))
|
28
28
|
# print(check_excel(check_type="all", actual_oss=actual_oss, expected_oss=expected_oss))
|
29
29
|
# print(check_excel_all(actual_oss=oss1, expected_oss=oss2,skiprows =1))
|
30
|
-
|
30
|
+
print(check_excel_all(actual_oss=oss1, expected_oss=oss2, ignore_sort=0))
|
31
31
|
# print(check_excel_all(actual_oss=a_person_oss2, expected_oss=e_person_oss1, check_type="including"))
|
32
|
-
print(check_excel_all(actual_oss=
|
32
|
+
# print(check_excel_all(actual_oss=e_person_oss1, expected_oss=a_person_oss2, check_type="person"))
|
33
33
|
# read_excel_csv_data(type=)
|
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
|