Skip to content

Instantly share code, notes, and snippets.

@fmasanori
Last active March 7, 2018 01:22
Show Gist options
  • Save fmasanori/5923199 to your computer and use it in GitHub Desktop.
Save fmasanori/5923199 to your computer and use it in GitHub Desktop.
gridfs mongo
import pymongo
import gridfs
import sys
con = pymongo.MongoClient("mongodb://localhost")
db = con.test
videos_meta = db.videos_meta
grid = gridfs.GridFS(db, 'videos')
f = open('extreme_video.mp4', 'r')
_id = grid.put(f)
f.close()
print ('id of file is ', _id)
videos_meta.insert({'grid_id':_id, 'filename':
'extreme_video.mp4'})
@felipekoblinger
Copy link

Para quem estiver utilizando Python 3 e está com o erro parecido abaixo:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd4 in position 43: invalid continuation byte

Utilize na função open(), no parâmetro de mode 'rb' ao invés de só 'r'.
O 'b' entra em modo binário, assim possibilitando ler o arquivo.

Exemplo:

f = open('extreme_video.mp4', 'rb')

Fonte: https://docs.python.org/3/library/functions.html#open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment