Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
amazon_reports
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
common
amazon_reports
Commits
4bfa7ee9
Commit
4bfa7ee9
authored
Oct 22, 2024
by
邱阿朋
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化
parent
e64a0c56
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
7 deletions
+9
-7
invoices.py
invoices.py
+9
-7
No files found.
invoices.py
View file @
4bfa7ee9
...
@@ -33,8 +33,8 @@ def export_list_read_data():
...
@@ -33,8 +33,8 @@ def export_list_read_data():
df
=
pd
.
read_excel
(
new_file_name
)
df
=
pd
.
read_excel
(
new_file_name
)
return
df
return
df
file_name
=
'
new_
Payments.xlsx'
file_name
=
'Payments.xlsx'
if
not
os
.
path
.
isfile
(
new_
file_name
):
if
not
os
.
path
.
isfile
(
file_name
):
raise
FileNotFoundError
(
f
"{file_name},文件不存在"
)
raise
FileNotFoundError
(
f
"{file_name},文件不存在"
)
# page.get(f"https://vendorcentral.amazon.com/hz/vendor/members/remittance/home", timeout=3)
# page.get(f"https://vendorcentral.amazon.com/hz/vendor/members/remittance/home", timeout=3)
...
@@ -42,7 +42,7 @@ def export_list_read_data():
...
@@ -42,7 +42,7 @@ def export_list_read_data():
# page.ele("#remittance-home-export-link", timeout=2).click.to_download()
# page.ele("#remittance-home-export-link", timeout=2).click.to_download()
# file.wait_for_downloads(file_name)
# file.wait_for_downloads(file_name)
all_df
=
pd
.
read_excel
(
'Payments.xlsx'
,
header
=
None
)
all_df
=
pd
.
read_excel
(
file_name
,
header
=
None
)
# 找到所有空行的索引,这里假设完全空的行为表头之间的分界线
# 找到所有空行的索引,这里假设完全空的行为表头之间的分界线
empty_rows
=
all_df
[
all_df
.
isnull
()
.
all
(
axis
=
1
)]
.
index
.
tolist
()
empty_rows
=
all_df
[
all_df
.
isnull
()
.
all
(
axis
=
1
)]
.
index
.
tolist
()
...
@@ -51,20 +51,21 @@ def export_list_read_data():
...
@@ -51,20 +51,21 @@ def export_list_read_data():
first_header_start
=
empty_rows
[
1
]
+
1
# 第一个表头开始的行
first_header_start
=
empty_rows
[
1
]
+
1
# 第一个表头开始的行
second_header_start
=
empty_rows
[
2
]
+
3
# 第二个表头开始的行
second_header_start
=
empty_rows
[
2
]
+
3
# 第二个表头开始的行
first_df
=
pd
.
read_excel
(
'Payments.xlsx'
,
skiprows
=
first_header_start
,
nrows
=
second_header_start
-
7
)
first_df
=
pd
.
read_excel
(
file_name
,
skiprows
=
first_header_start
,
nrows
=
second_header_start
-
7
)
second_df
=
pd
.
read_excel
(
'Payments.xlsx'
,
skiprows
=
second_header_start
)
second_df
=
pd
.
read_excel
(
file_name
,
skiprows
=
second_header_start
)
# 定义正则表达式模式,匹配包含 'Price' 或 'PCR' 或 'XXXXXXXX/XXXX/' 的描述
# 定义正则表达式模式,匹配包含 'Price' 或 'PCR' 或 'XXXXXXXX/XXXX/' 的描述
pattern
=
r'Price Claim|PCR|Missed Adjustment|Shortage Claim|^[A-Z0-9]{8}/[A-Z0-9]{4}/'
pattern
=
r'Price Claim|PCR|Missed Adjustment|Shortage Claim|^[A-Z0-9]{8}/[A-Z0-9]{4}/'
# 过滤符合条件的行
# 过滤符合条件的行
filtered_second_df
=
second_df
[
second_df
[
'Description'
]
.
str
.
contains
(
pattern
,
na
=
False
,
regex
=
True
)]
filtered_second_df
=
second_df
[
second_df
[
'Description'
]
.
str
.
contains
(
pattern
,
na
=
False
,
regex
=
True
)]
merged_df
=
pd
.
merge
(
filtered_second_df
,
first_df
[[
'Payment Number'
,
'Payment Date'
]],
on
=
'Payment Number'
,
how
=
'left'
)
merged_df
=
pd
.
merge
(
filtered_second_df
,
first_df
[[
'Payment Number'
,
'Payment Date'
]],
on
=
'Payment Number'
,
how
=
'left'
)
excel
.
save_xls
(
merged_df
,
"new_Payments.xlsx"
,
"Remittance payments"
)
excel
.
save_xls
(
merged_df
,
new_file_name
,
"Remittance payments"
)
return
merged_df
return
merged_df
def
export_details_read_data
(
invoice_number
):
def
export_details_read_data
(
invoice_number
):
# 读取详情内容
# 读取详情内容
file_name
=
f
"invoices
\\
{invoice_number}.csv"
file_name
=
f
"invoices
\\
{invoice_number}.csv"
...
@@ -291,6 +292,7 @@ def main():
...
@@ -291,6 +292,7 @@ def main():
page
.
close
()
page
.
close
()
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
try
:
try
:
main
()
main
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment