【发布时间】:2023-03-08 04:10:01
【问题描述】:
我卡住了,需要一些帮助。我似乎找不到有关如何下载文件的任何参考。我一直在使用请求来查找文件名,但我不知道从那里去哪里。
'Content-disposition': 'attachment;filename=MT0376_DealerPrice.zip'
Any help would be greatly appreciated
import requests
import csv
import urllib
from urllib.request import urlretrieve
import sys, os, base64, datetime, hashlib, hmac, urllib
from time import gmtime, strftime
import xml.etree.ElementTree as ET
import math
import time
import zipfile
dealerCode = 'Code'
userName ='User'
password = 'Pass'
loginUrl = 'https://www.lemansnet.com/login'
payload = {'rememberMe': 'on',
'dealerCode': dealerCode,
'dm': 4,
'userName': userName,
'password': password}
r = requests.post(loginUrl, params=payload)
token = r.headers['loginToken']
with open ("parts.xml", "r") as myfile:
requestBody = myfile.read().replace('\n', '')
serviceURL = 'https://www.lemansnet.com/pricing/2013/pos'
ContentType = 'Content-Type:text/xml'
ContentLength = len(requestBody)
loginToken = 'loginToken:' + token
httparray = {'content': requestBody}
xml = """<pricing>
<whoForDealer>
<dealerCode>MT0376</dealerCode>
</whoForDealer>
<rememberPreferences>1</rememberPreferences>
</pricing>"""
params = {'http': httparray}
requestHeaders = {'Content-Type': 'text/xml',
'Content-Length': ContentLength,
'charset': 'utf-8',
'loginToken': token,
'Cache-Control': 'no-cache',
'Pragma': 'no-cache',
'Connection': 'keep-alive'}
files ={'file': ('parts.xml')}
t = requests.post(serviceURL, data=xml, headers=requestHeaders)
#print(r.url)
#print(r.headers)
#print(r.text)
#print(r.status_code)
#print(r.content)
#print(t.url)
#print(t.headers)
#print(t.text)
print(t.status_code)
print(t.content)
with open("MT0376_DealerPrice1.zip", "wb") as code:
code.write(t.content)
zip = t.headers['Content-disposition']
#print(zip)
#localName = zip.split('filename=')[1]
#print(localName)
print('end')
这是我目前对上述代码的回应。
200
b'PK\x03\x04\x14\x00\x08\x08\x08\x00H\x8aOF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00PriceFile_system_errors.txt\xe3\xf5M\xac\xc8\xcc-\xcdUHI\xcc\xcc\xa9T\xc8\xc9\xcc\xcd,QH\xadHNMMIM\xd1\xe3\xc5+\x0b\x00PK\x07\x08\xcdO\x92K#\x00\x00\x00<\x00\x00\x00PK\x01\x02\x14\x00\x14\x00\x08\x08\x08\x00H\x8aOF\xcdO\x92K#\x00\x00\x00<\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00PriceFile_system_errors.txtPK\x05\x06\x00\x00\x00\x00\x01\x00\x01\x00I\x00\x00\x00l\x00\x00\x00\x00\x00'
end
感谢大家的帮助,我想我设法解决了这个问题。我将上面的代码编辑为我认为正常工作的代码。不幸的是,我收集信息的网站只允许我每天下载 3 次文件,所以我要到明天才能真正测试它。
【问题讨论】:
-
可以分享网址和代码吗?
-
它有点乱,但这是我目前得到的。
-
好的,你具体要什么?
标签: python