Need to see if your shared folder is taking up space on your dropbox 👨💻? Find out how to check here.
Forum Discussion
app5000
9 years agoExplorer | Level 3
how to get file_id, file_size metadata using filename gotten from file chooser (python)
I have used dropbox file chooser to download files and filelinks. After I extract the filenames using the file chooser, I want to get more extended metadta.
To do that I first went through Oau...
- 9 years ago
I just took another look at your code, and I see you're trying to access the `size` returned by the Chooser, but per the documentation that should actually be `bytes`, so you can access it like `obj[0].bytes`.
The API v2 Python SDK's files_get_metadata method does accept a file ID in place of a path, so you can just call `dbx.files_get_metadata(fileID)`, where `fileID` is the file ID you got from the Chooser as `obj[0].id)`.
app5000
9 years agoExplorer | Level 3
Hello Greg,
Just tried but fileid came up empty.
Here is the code I am using to get the values from returned response:
filename=obj.name;
filepath=obj.link;
fileicon=obj.id;
filesize=obj.size;
fileicons=obj.icon;
filethumbnail=obj.thumbnailLink;
I am not sure how to save the thumbnail image. Should I save it as a file or is it in a string (as in a link) format?
Q
app5000
9 years agoExplorer | Level 3
Here is what I have:
<script type="text/javascript" src="https://www.dropbox.com/static/api/2/dropins.js" id="dropboxjs" data-app-key="kuxx5m7ap1npv24"></script>
<script>
var options= {
multiselect: true,
//extensions: ['.png', '.jpg', '.mvp3', '.mvp4', '.doc', '.xls'],
linkType: 'preview',
success: function(files) {
var filenames;
var filepaths;
var fileids;
var filesizes;
var fileicons;
var filethumbnails;
//Parse file names and file paths from files. Store data into arrays.
var obj = files;
filenames=obj.name;
filepaths=obj.link;
fileicons=obj.id;
filesizes=obj.size;
fileicons=obj.icon;
filethumbnails=obj.thumbnailLink;
document.getElementById('linkfile').value = filepaths;
document.getElementById('namefile').value = filenames;
document.getElementById('idfile').value = fileids;
document.getElementById('sizefile').value = filesizes;
document.getElementById('iconfile').value = fileicons;
document.getElementById('thumbnailfile').value = filethumbnails;
alert(filepaths);
alert(filenames);
alert(fileids);
alert(filesizes);
alert(fileicons);
alert(filethumbnails);
};
},
};
$(document).ready(function() {
var button = Dropbox.createChooseButton(options);
document.getElementById('uploadDB').appendChild(button);
});
</script>
<div id="uploadDB"></div>
I can get name, link, icon/thumbnail not size and nor id.
Q.
- Greg-DB9 years ago
Dropbox Community Moderator
Thanks! I see two things that will likely make this not work:
1) The `files` variable given to your `success` callback is an array of files, so you can't directly access the information about specific files on it. You'll need to either iterate over it, or access individual items, e.g., `files[0].id`.
2) You're never actually setting `fileids`. You're instead setting `fileicons` twice.
- app50009 years agoExplorer | Level 3
Good catch. I tried using var obj = files[0]; to get the first file and I was able to get the fileid. But the filesize is still empty. Is it possible to get filesize here? Maybe I can get it later using fileid.
I am trying to find instructions on getting metadata using fileid in python. program. You are so knowledgable, do you have any hints for me? I cannot pin point any good reads on it. Thanks again.
Q
- Greg-DB9 years ago
Dropbox Community Moderator
I just took another look at your code, and I see you're trying to access the `size` returned by the Chooser, but per the documentation that should actually be `bytes`, so you can access it like `obj[0].bytes`.
The API v2 Python SDK's files_get_metadata method does accept a file ID in place of a path, so you can just call `dbx.files_get_metadata(fileID)`, where `fileID` is the file ID you got from the Chooser as `obj[0].id)`.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
The Dropbox Community team is active from Monday to Friday. We try to respond to you as soon as we can, usually within 2 hours.
If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X, Facebook or Instagram.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!