def createNewFolder(folderName, parent):
    f = onedrivesdk.Folder()
    i = onedrivesdk.Item()
    i.name = folderName
    i.folder = f
    returned_item = parent.children.add(i)
    return client.item(drive="me", id=returned_item.id)
Example #2
0
def do_mkdir(client, args):
    """OneDriveClient, [str] -> OneDriveClient
    
    Make a remote folder.
    
    This is NOT a recursive one: the father folder must exist.

    Nice and easy.
    """
    for folder_path in args.rest:

        # make sure we are making the right folder
        if folder_path.endswith('/'):
            folder_path = folder_path[:-1]

        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()

        i.name = path_to_name(folder_path)
        i.folder = f

        client.item(drive='me',
                    path=path_to_remote_path(folder_path)).children.add(i)

    return client
Example #3
0
 def mkdir(self, path, mode):
     name, parent = basename(path), dirname(path)
     item = onedrivesdk.Item()
     item.name = name
     item.folder = onedrivesdk.Folder()
     new_item = self.api.item(path=parent).children.add(item)
     self.cache.add_item(new_item.id, name, parent,
                         new_item.created_date_time)
Example #4
0
 def create_folder_by_name(self, name, parent=None, ignore_exists=True):
     parent = parent if parent != None else self.get_root_folder()
     if (not ignore_exists) and self.get_folder_by_name(name,
                                                        parent) != None:
         raise Exception(
             'Folder already exists and overwrite flag is set to false.')
     f = onedrivesdk.Folder()
     i = onedrivesdk.Item()
     i.name = name
     i.folder = f
     new_folder = parent.children.add(i)
     return self.get_object_by_id(new_folder.id)
Example #5
0
    def __create_folder(self, item_id,
                        folder_name):  #Create folder with provided name
        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()
        i.name = folder_name
        i.folder = f

        folder = self.__onedrive_service.item(drive='me',
                                              id=item_id).children.add(i)

        log_success('[+] creating new directory...')

        return folder.id  #Return folder object ID
Example #6
0
    def upload_folder(self, ls_dt_fld):
        nm_fld = ls_dt_fld[0]  # nm_fld = name of folder
        pr_fld = ls_dt_fld[1]  # pr_fld = id parent

        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()
        i.name = nm_fld
        i.folder = f

        try:
            OB = self.client.item(drive="me", id=pr_fld).children.add(i)
            return OB.id
        except Exception:
            return None
Example #7
0
 def upload_file_s(self):
     def find_in_colls(prev_col=None):
         self.logger.debug("Paging trough collections\n")
         coll = None
         if prev_col:
             coll = onedrivesdk.ChildrenCollectionRequest.get_next_page_request(prev_col, client).get()
         else:
             coll = self.api_end.item(drive='me', id='root').children.request(top=1).get()
         names = [n.name for n in coll]
         end = True if len(coll) != 5 else False
         found = True if dest in names else False
         if end and not found:
             self.logger.debug("Couldn't find destination in collections")
             return False
         elif found:
             return True
         elif end:
             self.logger.debug("Collection has ended")
             return False
         else:
             self.logger.debug("Collection has ended, but there might be more pages retrying")
             return find_in_colls(coll)
     u_path = src or self.u_path
     u_path = os.path.abspath(u_path)
     if os.path.isfile(u_path):
         self.logger.info("Src is file: %s" % (u_path))
         f_name = os.path.basename(u_path)
         if not find_in_colls():
             self.logger.info("Your destination does not exist, creating it now...\n")
             f = onedrivesdk.Folder()
             i = onedrivesdk.Item()
             i.name = dest
             i.folder = f
             try:
                 returned_item = self.api_end.item(drive='me', id='root').children.add(i)
             except Exception as e:
                 self.logger.critical("Error creating folder\n")
                 sys.exit(1)
         with open(u_path, "rb") as f:
             db_path = dest.lower()
             db_path = "/%s" % (db_path)
             f_path = "%s/%s" % (db_path, f_name)
             list_d = [entry.name for entry in self.api_end.files_list_folder('').entries]
             if dest.lower() not in list_d:
                 self.api_end.files_create_folder(db_path)
             self.api_end.files_upload(f.read(), f_path, mode=WriteMode('overwrite'))
     else:
         print("Not implemented")
         sys.exit(1)
Example #8
0
def onedrive_create_folder(onedrive_access, folder_name):
    try:
        item_id = "root"
        drive = "me"
        #method to create new folder
        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()
        i.folder = f
        i.name = folder_name
        onedrive_access.item(drive=drive, id=item_id).children.add(i)

    except Exception as e:
        #print('Folder create:: ', str(e))

        return
Example #9
0
    def create_folder(self, name, parent_id=None, parent_path=None):
        """
        Create a new folder in OneDrive
        :param name: str, new folder name
        :param parent_id: str, parent id
        :param parent_path: str, parent path
        :return:
        """
        folder_to_create = onedrivesdk.Item()
        folder_to_create.name = name
        folder_to_create.folder = onedrivesdk.Folder()

        item = self.client.item(id=parent_id, path=parent_path)

        return item.children.add(folder_to_create)
Example #10
0
 def get_upload(client, get_sharing_link):
     f = onedrivesdk.Folder()
     i = onedrivesdk.Item()
     i.name = FOLDER_NAME
     i.folder = f
     retur_folder = client.item(drive='me', id='root').children.add(i)
     try:
         return_file = client.item(
             drive='me',
             id=retur_folder.id).children['%s' %
                                          FILE_NAME].upload(FILE_UPLOAD)
         get_sharing_link(client, return_file)
         print share
     except IOError:
         print u'Файл не найден'
Example #11
0
def saveFile(foldername, fileName, tt, client):
    filp='%s.html'%fileName
    with open(filp, 'w', encoding='utf-8') as file:
        file.write(tt)

    summary_id='ED1A0D88BB2A445F%218025'
    fold_id=get_folder_id(client, foldername, summary_id)
    if fold_id is None:
        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()
        i.name = foldername
        i.folder = f
        client.item(drive='me', id=summary_id).children.add(i)
        fold_id = get_folder_id(client, foldername, summary_id)

    client.item(drive='me', id=fold_id).children[filp].upload(filp)
    os.remove(filp)
Example #12
0
    def mkdir(self, *paths):
        created_dirs = []
        for path in paths:
            path = normpath(path)
            base_path, folder_name = split(path)

            id = self.find_item_id(base_path)

            f = onedrivesdk.Folder()
            i = onedrivesdk.Item()

            i.name = folder_name
            i.folder = f

            dir = self.client.item(drive='me', id=id).children.add(i)

            created_dirs.append(dir)

        return created_dirs
Example #13
0
    def newfolder(self, name, parent, dirtrans):
        dirtrans = self.checkparent(parent, dirtrans)
        if parent == "/":
            item = 'root'
        else:
            item = dirtrans[parent + "/"].id
        f = onedrivesdk.Folder()
        i = onedrivesdk.Item()
        i.name = name
        i.folder = f

        returned_item = self.client.item(drive='me', id=item).children.add(i)
        if parent == "/":
            parent = ""
        newfolder = parent + "/" + name
        dirtrans[newfolder] = returned_item
        print("newfoldermade", newfolder)
        self.logger.add("new folder " + newfolder)
        return dirtrans
Example #14
0
def new_folder(client,parent_id,folder_name):
    f = onedrivesdk.Folder()
    i = onedrivesdk.Item()
    i.name = folder_name
    i.folder = f
    return client.item(drive='me', id=parent_id).children.add(i)
Example #15
0
 def createFolder(self, parentID, name):
     f = onedrivesdk.Folder()
     i = onedrivesdk.Item()
     i.name = name
     i.folder = f
     return self.client.item(drive='me', id=parentID).children.add(i)
Example #16
0
def onedrive_add_folder(client):
    f = onedrivesdk.Folder()
    i = onedrivesdk.Item()
    i.name = 'New Folder'
    i.folder = f
    returned_item = client.item(drive='me', id='root').children.add(i)
Example #17
0
def addFolder(folderName, client):
    f = onedrivesdk.Folder()
    i = onedrivesdk.Item()
    i.name = folderName
    i.folder = f
    returned_item = client.item(drive='me', id='root').children.add(i)
Example #18
0
 def add_folder(self, path, folder_id='root'):
     item = onedrivesdk.Item({
         'name': ntpath.basename(path),
         'folder': onedrivesdk.Folder()
     })
     return self.item(drive='me', id=folder_id).children.add(item).id
Example #19
0
def create_folder(onedrive, parent_folder, folder_name):
    f = onedrivesdk.Folder()
    i = onedrivesdk.Item()
    i.name = folder_name
    i.folder = f
    return onedrive.item(id=parent_folder.id).children.add(i)
Example #20
0
 def create_directory(self, name, parent_path):
     f = onedrivesdk.Folder()
     i = onedrivesdk.Item()
     i.name = name
     i.folder = f
     self._client.item(drive='me', path=parent_path).children.add(i)
Example #21
0
import onedrivesdk

redirect_uri = 'http://localhost:8080/'
client_secret = 'l2ou?5xzD3:mHa0zTXkiPF-xB-?OUA]U'
client_id='9e62671f-d2e8-44c2-93b3-082c4e14b13e'
api_base_url='https://api.onedrive.com/v1.0/'
scopes=['wl.signin', 'wl.offline_access', 'onedrive.readwrite']

http_provider = onedrivesdk.HttpProvider()
auth_provider = onedrivesdk.AuthProvider(
    http_provider=http_provider,
    client_id=client_id,
    scopes=scopes)

client = onedrivesdk.OneDriveClient(api_base_url, auth_provider, http_provider)
auth_url = client.auth_provider.get_auth_url(redirect_uri)
# Ask for the code
print('Paste this URL into your browser, approve the app\'s access.')
print('Copy everything in the address bar after "code=", and paste it below.')
print(auth_url)
code = input('Paste code here: ')

client.auth_provider.authenticate(code, redirect_uri, client_secret)

f = onedrivesdk.Folder()
i = onedrivesdk.Item()
i.name = 'New Folder'
i.folder = f

returned_item = client.item(drive='me', id='root').children.add(i)