Skip to content

Instantly share code, notes, and snippets.

@nuriozbey
nuriozbey / sharepointoperations.py
Created September 6, 2022 14:14
MS Sharepoint File Operations
"""
Client Id: *******************************************
Client Secret: ******************************************=
Title: AccessForFileUpload
App Domain: www.nuriozbey.com
Redirect URI: https://nuriozbey.sharepoint.com/
"""
import pandas as pd
from io import BytesIO
"""
# Usage:
df = pd.DataFrame({'num_l': [2, 4, 8, 0],
'num_w': [2, 0, 0, 0],
'num_s': [10, 2, 1, 8]},
index=['falcon9', 'falcon1', 'python', 'anaconda'])
"""
# Usage:
file_relative_url = '/teams/DataShare/Shared Documents/General/DummyFolder/dummy.txt'
delete_file(ctx = ctx , file_relative_url = file_relative_url)
"""
def delete_file(ctx, file_relative_url):
file_to_delete = ctx.web.get_file_by_server_relative_url(file_relative_url)
file_to_delete.delete_object()
ctx.execute_query()
"""
Usage:
old_file_dir = '/teams/<channel>/Shared Documents/General/DummyFolder/dummy2.txt'
new_file_dir = '/teams/<channel>/Shared Documents/General/dummy_3.txt'
move_file(ctx=ctx, old_file_dir=old_file_dir, new_file_dir=new_file_dir)
"""
def move_file(ctx, old_file_dir, new_file_dir):
source_file = ctx.web.get_file_by_server_relative_url(old_file_dir)
source_file.moveto(new_relative_url=new_file_dir, flag=1)
ctx.execute_query()
"""
Usage:
dir = '/teams/DataShare/Shared Documents/General/DummyFolder/'
old_name = 'dummy2_n.txt'
new_name = "dummy2.txt"
rename_file(ctx=ctx, dir=dir, old_name=old_name,new_name=new_name)
"""
def rename_file(ctx, dir, old_name, new_name):
old_url = os.path.join(dir,old_name)
source_file = ctx.web.get_file_by_server_relative_url(old_url)
"""
Usage:
folder_url = "/teams/<channel>/Shared Documents/General/DummyFolder"
list_files(ctx = ctx, relative_url = folder_url)
"""
def list_files(ctx,relative_url):
libraryRoot = ctx.web.get_folder_by_server_relative_path(relative_url)
ctx.load(libraryRoot)
ctx.execute_query()
"""
Usage:
folder_url = "/teams/<channel>/Shared Documents"
list_folders(ctx = ctx, relative_url = folder_url)
"""
def list_folders(ctx,relative_url):
libraryRoot = ctx.web.get_folder_by_server_relative_path(relative_url)
ctx.load(libraryRoot)
@nuriozbey
nuriozbey / connect_sharepoint.py
Last active September 6, 2022 10:12
Connect Sharepoint with Client Id ad Client Secret
import os
import json
from office365.runtime.auth.client_credential import ClientCredential
from office365.sharepoint.client_context import ClientContext
def connect_sharepoint(cwd= os.getcwd()): # provide json contained folder
with open(os.path.join(cwd,"sharepoint_credentials.json")) as file:
credentials = json.load(file)
sp_site = 'https://<org>.sharepoint.com/sites/<my_site>/' # you should enter correct
# -*- coding: utf-8 -*-
"""
Created on Thu August 28 10:55:43 2018
This script is to find the duplicate files in the folder
@author: Nuri Özbey
Email: nuriozbey@gmail.com
"""
import datetime
import os, sys
import hashlib
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders
import glob
def getimputs():
fromaddr = input("Enter Email Adress : ")