2017-09-16 9 views
-1

J'essaie de copier une image d'un dossier vers un autre dossier en utilisant shutil dans python 3.6 windows 10, mais je suis en train de courir dans des erreurs d'autorisation.erreur d'autorisation python shutil copyfile

je ma source enregistré en tant que variable nommée 'src' qui contient

src = "C:/Users/marti/AppData/Roaming/vlc/art/artistalbum/artistname/art.jpg" 

et ma destination nommé 'src' qui contient

dst = "C:/Users/marti/Desktop/MRL/cover" 

mon dossier importe actuellement ces choses:

from shutil import copyfile 
from sys import exit 
import os 
import requests 

et je copie le src à la destination en utilisant cette commande:

copyfile(src, dst) 

Mais quand je lance ce programme, je me donne une erreur de permission:

IOError: [Errno 13] Permission denied: 'C:/Users/marti/Desktop/MRL/cover/' 

même quand je suis en cours d'exécution CMD en tant qu'administrateur, personne ne sait comment modifier ces autorisations pour python? Sinon, je suis ouvert à toutes les autres méthodes qui me permettront de copier une image d'un dossier vers un autre dossier, et éventuellement vérifier si la chaîne src a changé, auquel cas il va supprimer l'image dans le dossier dst et le remplacer

+0

Je ne sais pas si c'est une faute de frappe, mais vous avez des caractères d'espace dans votre variable 'src'. Alors, où est le nom du fichier dans 'src'? 'src = r" C: /Users/marti/Desktop/MRL/cover/art.jpg "' peut être mieux. – Kanak

+0

Oui, c'était un type merci, mais quand je le répare et avoir le src sans espaces je reçois toujours ce message d'erreur: Traceback (dernier appel dernier): Fichier "a.py", ligne 39, en getInfo() Fichier «a.py», ligne 36, dans getInfo copyfile (src, dst) Fichier «c: \ Python27 \ lib \ shutil.py», ligne 83, dans le fichier de copie avec open (dst, ' wb ') comme fdst: IOError: [Errno 13] Autorisation refusée:' C:/Users/marti/Desktop/MRL/couverture ' – Martin

+0

@MartinBarker S'il vous plaît poster l'information à votre question, et nous ne savons pas le temp_loc est quoi ici. peux-tu expliquer ? – aircraft

Répondre

0

De l'shutil doc:

Copy the contents (no metadata) of the file named src to a file named dst and return dst. src and dst are path names given as strings. dst must be the complete target file name; look at shutil.copy() for a copy that accepts a target directory path. If src and dst specify the same file, SameFileError is raised.

Vous devriez faire attention à la dst must be the complete target file name.