2017-08-17 2 views
1

Relativement nouveau utilisateur Python ici, alors s'il vous plaît, faites-moi confiance. Dans le cadre d'un programme sur lequel je travaille, j'ai besoin que Python boucle des dossiers dans un site SharePoint, copie un fichier dans chaque dossier et collez les copies dans un dossier local. J'essaie d'utiliser shutil.copy, mais j'obtiens une erreur ("OSError: [Errno 22] Invalid argument"). Je ne reçois aucune erreur si j'essaie de copier des fichiers à partir d'un lecteur local, ce qui me laisse penser que SharePoint est le problème. Après quelques recherches, il semble que j'ai besoin d'installer un type de module pour travailler avec SharePoint. Est-ce exact? Même si normalement j'utilise simplement Windows Explorer pour naviguer/éditer des fichiers sur le site SharePoint?Enregistrement de fichiers dans SharePoint 2007 en Python

L'autre problème est que mon travail utilise toujours SharePoint 2007, donc je pense que cela peut limiter mes options.

Toute aide est très appréciée. Merci!

import xlrd 
import shutil 
import os 

#This is the location of the file on the SharePoint 
sp_file = "https://...test.xlsx" 
#This is the desired destination locally. 
sp_comp_file = "C:\\Users\\555555\\Desktop\\Python Test\\test.xlsx" 
shutil.copy(sp_file, sp_comp_file) 

Erreur:

Traceback (most recent call last): 
    File "C:\Users\555555\Desktop\Python\teststack.py", line 9, in <module> 
    shutil.copy(sp_file, sp_comp_file) 
    File "C:\Users\555555\AppData\Local\Programs\Python\Python36-32\lib\shutil.py", line 235, in copy 
    copyfile(src, dst, follow_symlinks=follow_symlinks) 
    File "C:\Users\555555\AppData\Local\Programs\Python\Python36-32\lib\shutil.py", line 114, in copyfile 
    with open(src, 'rb') as fsrc: 
OSError: [Errno 22] Invalid argument: 'https://...test.xlsx' 
+0

Veuillez publier votre code et la sortie d'erreur complète, conformément aux conventions habituelles de débordement de pile. Merci – Justin

+0

@Justin Ajouté à la poste. –

Répondre

0

Il est peut-être tard maintenant, mais essayez de supprimer le "https:" à partir de votre variable appelée sp_file tels que:

sp_file = "//...test.xlsx" 

que je fais le même type de copier/coller sur un site SP et sans le "https:" cela fonctionne pour moi. Je ne suis pas sûr que cela fonctionnera, car je ne reçois pas la même erreur que vous si j'ajoute "https:" dans mon programme.