Commit 4a31fbe6 authored by 邱阿朋's avatar 邱阿朋

优化

parent 86a8ffe1
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
import math import math
import os import os
import shutil import shutil
import time
from urllib.parse import urlparse, parse_qs from urllib.parse import urlparse, parse_qs
import pandas as pd import pandas as pd
...@@ -58,7 +57,7 @@ def get_report_table_html(invoice_id): ...@@ -58,7 +57,7 @@ def get_report_table_html(invoice_id):
page.ele("#a-autoid-2-announce").click() page.ele("#a-autoid-2-announce").click()
# 下载报表 # 下载报表
page.ele(f"#invoiceDownloads-{invoice_id}_2").click() page.ele(f"#invoiceDownloads-{invoice_id}_2").click()
time.sleep(1) page.wait(1)
# 获取报表表单内容 # 获取报表表单内容
report_table_html = page.ele("#backup-report-table").html report_table_html = page.ele("#backup-report-table").html
if report_table_html is None or report_table_html == "": if report_table_html is None or report_table_html == "":
...@@ -199,4 +198,7 @@ def main(): ...@@ -199,4 +198,7 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
try:
main() main()
except Exception as e:
print(e)
...@@ -2,13 +2,12 @@ ...@@ -2,13 +2,12 @@
# 回款明细 # 回款明细
import os import os
import re import re
import time
import urllib.parse import urllib.parse
import warnings import warnings
import pandas as pd import pandas as pd
from DrissionPage import ChromiumPage from DrissionPage import ChromiumPage
from DrissionPage.errors import PageDisconnectedError, ElementNotFoundError from DrissionPage.errors import ElementNotFoundError
from lxml import etree from lxml import etree
from helper import helper, excel, file from helper import helper, excel, file
...@@ -69,11 +68,6 @@ def export_list_read_data(): ...@@ -69,11 +68,6 @@ def export_list_read_data():
def export_details_read_data(invoice_number): def export_details_read_data(invoice_number):
# 读取详情内容
file_name = f"invoices\\{invoice_number}.csv"
if os.path.isfile(file_name):
return pd.read_csv(file_name)
params = { params = {
"invoiceNumber": invoice_number, "invoiceNumber": invoice_number,
"payeeCode": "VECET", "payeeCode": "VECET",
...@@ -84,6 +78,11 @@ def export_details_read_data(invoice_number): ...@@ -84,6 +78,11 @@ def export_details_read_data(invoice_number):
full_url = f"https://vendorcentral.amazon.com/hz/vendor/members/inv-mgmt/invoice-details?" + query_string full_url = f"https://vendorcentral.amazon.com/hz/vendor/members/inv-mgmt/invoice-details?" + query_string
page.get(full_url, timeout=3) page.get(full_url, timeout=3)
# 读取详情内容
file_name = f"invoices\\{invoice_number}.csv"
if os.path.isfile(file_name):
return pd.read_csv(file_name)
while True: while True:
try: try:
page.ele("#line-items-export-to-spreadsheet-announce", timeout=5).click.to_download(rename=file_name) page.ele("#line-items-export-to-spreadsheet-announce", timeout=5).click.to_download(rename=file_name)
...@@ -180,7 +179,7 @@ def click_get_price_data(): ...@@ -180,7 +179,7 @@ def click_get_price_data():
page.ele("#pd", timeout=5).click() page.ele("#pd", timeout=5).click()
while True: while True:
print("等待争议数据加载,5秒后获取表单数据") print("等待争议数据加载,5秒后获取表单数据")
time.sleep(5) page.wait(5)
try: try:
table_html = page.ele("#priceDiscrepancyWithDMSGridForm", timeout=5).html table_html = page.ele("#priceDiscrepancyWithDMSGridForm", timeout=5).html
price_data = price_extract_data(table_html) price_data = price_extract_data(table_html)
...@@ -249,7 +248,7 @@ def main(): ...@@ -249,7 +248,7 @@ def main():
# 获取当前订单的Payee和优惠比例 # 获取当前订单的Payee和优惠比例
vendor_payment_terms = get_po_code(i, invoice_number) vendor_payment_terms = get_po_code(i, invoice_number)
time.sleep(2) page.wait(2)
print(vendor_payment_terms) print(vendor_payment_terms)
vendor = vendor_payment_terms['vendor'] vendor = vendor_payment_terms['vendor']
...@@ -257,7 +256,7 @@ def main(): ...@@ -257,7 +256,7 @@ def main():
# 下载excel文件并读取数据 # 下载excel文件并读取数据
detail_data = export_details_read_data(invoice_number) detail_data = export_details_read_data(invoice_number)
time.sleep(2) page.wait(2)
# 获取争议数据 # 获取争议数据
all_price_data = click_get_price_data() all_price_data = click_get_price_data()
...@@ -299,7 +298,5 @@ def main(): ...@@ -299,7 +298,5 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
try: try:
main() main()
except KeyboardInterrupt: except Exception as e:
pass print(e)
except PageDisconnectedError as e:
print("与页面的连接已断开")
...@@ -4,7 +4,7 @@ import os ...@@ -4,7 +4,7 @@ import os
import pandas as pd import pandas as pd
from DrissionPage import ChromiumPage from DrissionPage import ChromiumPage
from DrissionPage.errors import PageDisconnectedError, ElementNotFoundError from DrissionPage.errors import ElementNotFoundError
from helper import helper, excel, file from helper import helper, excel, file
...@@ -113,12 +113,6 @@ def main(): ...@@ -113,12 +113,6 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
try: try:
# email = helper.get_input_with_default("请输入账户", "us-cs001@khdtek.com")
# print(f"您输入的账户是:{email}")
# password = helper.get_input_with_default("请输入密码", "khd=20221208")
# print(f"您输入的密码是:{password}")
main() main()
except KeyboardInterrupt: except Exception as e:
pass print(e)
except PageDisconnectedError as e: \ No newline at end of file
print("与页面的连接已断开")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment