The problem with writing a file with the with open construction

This is my what that write file: Part of def download_file

    fh = io.BytesIO()
    downloader = MediaIoBaseDownload(fh, request)
    done = False
    while not done:
        status, done = downloader.next_chunk()
    fh.seek(0)
    if mime_type in mime_type_extension.keys():
        file_name = file_name + mime_type_extension[mime_type]
    with open(file_name, 'wb+') as f:
        f.write(fh.read())

Part of def download_folder

    os.makedirs(location, exist_ok=True)
        for item in items:
            folder_name = item['name'] if item['name'][-1] != ' ' else item['name'][:-1]
            if item['mimeType'] == 'application/vnd.google-apps.folder':
                folder_path = os.path.join(location, folder_name)
                download_folder(item['id'], location=folder_path.replace('/.', '/_').replace(' ', '_'))
            else:
                file_path = os.path.join(location, folder_name)
                # Теперь передаем mimeType в функцию download_file
                download_file(item['id'], file_path.replace('/.', '/_').replace(' ', '_'), item['mimeType'])

You can reach the desired directory. Moreover, the logs show that the file has already been written to this directory. Is this some kind of Ubuntu feature, do you need to additionally screen something else? How do I understand the error of not being able to write a file?

████████ FILE: /Project_Bibi.ru__0AP8FoV3uy3m6Uk9PVA/Bi-bi.ru01_Marketplace/97_External/_Testirovanie_na_etape_razrabotki/_VTZ_dlja_testirovanija/_VTZ_Servis_«Logistika»_(testirovanie).docx (1Vk7D0T9Uun3rtV4SxsbHgm18-kn1DKxQ)
████████ FILE: /Project_Bibi.ru__0AP8FoV3uy3m6Uk9PVA/Bi-bi.ru01_Marketplace/97_External/_Testirovanie_na_etape_razrabotki/_VTZ_dlja_testirovanija/_VTZ_Tsenoobrazovanie_(testirovanie) (1uN8pcMgrt8fYSaEnknYVYoGFzCXnBWGRtnQ7sjzB1f4)
████████ FILE: /Project_Bibi.ru__0AP8FoV3uy3m6Uk9PVA/Bi-bi.ru01_Marketplace/97_External/_Testirovanie_na_etape_razrabotki/_VTZ_dlja_testirovanija/_VTZ_Servis_«Avtorizatsija/Registratsija»_(testirovanie) (1SoyFkwgH_v9J2hW1p_enhL0c1Tk7YgYHZNvtjbEfKIg)
Traceback (most recent call last):
  File "/mnt/download_shared_drives.py", line 111, in <module>
    download_folder(link[1], DOWNLOAD_FOLDER + f'/{link[0]}__{link[1]}')
  File "/mnt/download_shared_drives.py", line 90, in download_folder
    download_folder(item['id'], location=translit(folder_path.replace('/.', '/_').replace(' ', '_'), language_code='ru', reversed=True))
  File "/mnt/download_shared_drives.py", line 90, in download_folder
    download_folder(item['id'], location=translit(folder_path.replace('/.', '/_').replace(' ', '_'), language_code='ru', reversed=True))
  File "/mnt/download_shared_drives.py", line 90, in download_folder
    download_folder(item['id'], location=translit(folder_path.replace('/.', '/_').replace(' ', '_'), language_code='ru', reversed=True))
  [Previous line repeated 1 more time]
  File "/mnt/download_shared_drives.py", line 94, in download_folder
    download_file(item['id'], translit(file_path.replace('/.', '/_').replace(' ', '_'), language_code='ru', reversed=True), item['mimeType'])
  File "/mnt/download_shared_drives.py", line 66, in download_file
    with open(translit(file_name.replace('/.', '/_').replace(' ', '_'), language_code='ru', reversed=True), 'wb+') as f:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/hdd/Project_Bibi.ru__0AP8FoV3uy3m6Uk9PVA/Bi-bi.ru01_Marketplace/97_External/_Testirovanie_na_etape_razrabotki/_VTZ_dlja_testirovanija/_VTZ_Servis_«Avtorizatsija/Registratsija»_(testirovanie).docx'

Upvotes: 0

Views: 10

Answers (0)

Related Questions