ฉันยังใหม่กับ Python และฉันได้ผ่านคำถามและคำตอบในเว็บไซต์นี้เพื่อตอบคำถามของฉัน อย่างไรก็ตามฉันเป็นผู้เริ่มต้นและฉันพบว่ามันยากที่จะเข้าใจวิธีแก้ปัญหาบางอย่าง ฉันต้องการโซลูชันขั้นพื้นฐานมาก
มีคนช่วยอธิบายวิธีแก้ปัญหาง่ายๆให้กับ 'การดาวน์โหลดไฟล์ผ่าน http' และ 'การบันทึกลงดิสก์ใน Windows' ให้ฉันได้ไหม
ฉันไม่แน่ใจว่าจะใช้โมดูล shutil และ os ได้อย่างไร
ไฟล์ที่ฉันต้องการดาวน์โหลดมีขนาดไม่เกิน 500 MB และเป็นไฟล์เก็บถาวร. gz หากใครบางคนสามารถอธิบายวิธีแยกไฟล์เก็บถาวรและใช้ไฟล์ในนั้นได้นั่นก็จะดีมาก!
นี่เป็นวิธีแก้ปัญหาบางส่วนที่ฉันเขียนจากคำตอบต่าง ๆ รวมกัน:
import requests
import os
import shutil
global dump
def download_file():
global dump
url = "http://randomsite.com/file.gz"
file = requests.get(url, stream=True)
dump = file.raw
def save_file():
global dump
location = os.path.abspath("D:\folder\file.gz")
with open("file.gz", 'wb') as location:
shutil.copyfileobj(dump, location)
del dump
ใครช่วยชี้ให้เห็นข้อผิดพลาด (ระดับเริ่มต้น) และอธิบายวิธีการที่ง่ายขึ้นในการทำเช่นนี้?
ขอบคุณ!