This section handles batch uploading PDF files from philosophy and mathematics categories providing extra metadata.
import os
import json
import requests
url = 'https://api.activeloop.ai/files'
headers = {'Authorization': f'Bearer {os.getenv("ACTIVELOOP_TOKEN")}'}
for category in ['philosophy', 'mathematics']:
for author in os.listdir(category):
files = [('file', (pdf, open(f'{category}/{author}/{pdf}', 'rb'))) for pdf in os.listdir(f'{category}/{author}')]
# specify any extra metadata
metadata = {
'category': category,
'author': author
}
data = {'metadata': json.dumps(metadata)}
# upload files
response = requests.post(url, headers=headers, files=files, data=data)
print(response.status_code)