@Rod_99

Как сохранить файл (OS, Python)?

Задача: сохранить по status_code файлы с их расширением в три папки (good,bad,general ).

Я изначально пробовал через такую схему:

while True:
        if():
            if(r.status_code == 200):
                with open('\\Users\\user\\Desktop\\good\\gg.txt', 'wb') as f:               
                    f.write(r.content)                                                     
        if(r.status_code != 200):
            open(r'\Users\user\Desktop\bad\gg.zip', 'wb' ).write(r.content)
        break
    open(r'\Users\user\Desktop\general\gg.zip', 'wb').write(r.content)


Но уперся в то , что в функции open нужно указывать расширение файла, а так как я скачиваю сразу с нескольких url файлы с разными расширениями этот вариант не подошёл.
Тогда я попробовал OS , вопрос в том , как сохранить файлы в папки при этом сохранить их расширение ?

Сам код :
import requests
import os

def save_file(link):
    filename = link.split('/')[-1]
   
    data = requests.get('https://ipinfo.io/json')
    print(data.text)
    r =requests.get(link,allow_redirects=True)
    print(r.status_code)
    file_name, file_ext = os.path.splitext(os.path.basename(link))
    download_name = f'gp{file_name}'
    download_dir = 'good' if r.status_code == 200 else 'bad'
    download_path = os.path.join(r'\Users\user\Desktop', download_dir,download_name)
    #f = open()
    
link1 ='https://$$$$$$$$$$$.txt'
link2 ='https://$$$$$$$$$$$.jpeg'
link3 ='https://$$$$$$$$$$$.rules'
link4 ='https://$$$$$$$$$$$.php'

save_file(link1)
save_file(link2)
save_file(link3)
save_file(link4)


Благодарен за любую помощь !
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 1
TalismanChet
@TalismanChet
Лицо зла
пробовали list из либы os?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы