Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion UnicodeDecodeError while iterating over MongoDB collection

Received: by 10.224.183.13 with SMTP id ce13mr6180272qab.4.1349383315988;
        Thu, 04 Oct 2012 13:41:55 -0700 (PDT)
X-BeenThere: mongodb-user@googlegroups.com
Received: by 10.224.101.68 with SMTP id b4ls5583891qao.0.gmail; Thu, 04 Oct
 2012 13:41:41 -0700 (PDT)
Received: by 10.224.213.1 with SMTP id gu1mr6179610qab.7.1349383301256;
        Thu, 04 Oct 2012 13:41:41 -0700 (PDT)
Received: by 10.224.28.72 with SMTP id l8msqac;
        Thu, 4 Oct 2012 13:40:43 -0700 (PDT)
Received: by 10.52.156.115 with SMTP id wd19mr1365739vdb.2.1349383243193;
        Thu, 04 Oct 2012 13:40:43 -0700 (PDT)
Date: Thu, 4 Oct 2012 13:40:42 -0700 (PDT)
From: Bogdan <vasile...@gmail.com>
To: mongodb-user@googlegroups.com
Message-Id: <e538859a-e344-4531-9b92-71cc5a8ca9bb@googlegroups.com>
Subject: UnicodeDecodeError while iterating over MongoDB collection
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_160_4193433.1349383242885"

------=_Part_160_4193433.1349383242885
Content-Type: multipart/alternative; 
	boundary="----=_Part_161_14727303.1349383242885"

------=_Part_161_14727303.1349383242885
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit



I am trying to query a MongoDB database using Python 2.7 and pymongo-2.3 
using something like this:

from pymongo import Connection

connection = Connection()
db = connection['db-name']
collections = db.subName
entries = collections['collection-name']
print entries 
# > Collection(Database(Connection('localhost', 27017), u'db-name'), u'subName.collection-name')

for entry in entries.find():
    pass

The iterator fails even though I don't do anything with the entry objects:

Traceback (most recent call last):
File "/Users/../mongo.py", line 27, in <module>
  for entry in entries.find():
File "/Library/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/cursor.py", line 778, in next
File "/Library/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/cursor.py", line 742, in _refresh
File "/Library/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/cursor.py", line 686, in __send_message
File "/Library/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/helpers.py", line 111, in _unpack_response
UnicodeDecodeError: 'utf8' codec can't decode byte 0xfc in position 744: invalid start byte

I'm not the creator of the database I'm trying to query. Does anybody know 
what I'm doing wrong and how I can fix it? Thanks.

------=_Part_161_14727303.1349383242885
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<p style=3D"font-size: 14px; clear: both; word-wrap: break-word; color: rgb=
(0, 0, 0); font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif=
; text-align: left; ">I am trying to query a MongoDB database using Python =
2.7 and pymongo-2.3 using something like this:</p><pre class=3D"lang-py pre=
ttyprint" style=3D"margin-bottom: 10px; padding: 5px; font-size: 14px; back=
ground-color: rgb(238, 238, 238); font-family: Consolas, Menlo, Monaco, 'Lu=
cida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans =
Mono', 'Courier New', monospace, serif; overflow: auto; width: auto; max-he=
ight: 600px; color: rgb(0, 0, 0); line-height: 18px; text-align: left; "><c=
ode style=3D"font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liber=
ation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New',=
 monospace, serif; "><span class=3D"kwd" style=3D"background-color: transpa=
rent; color: rgb(0, 0, 139); ">from</span><span class=3D"pln" style=3D"back=
ground-color: transparent; "> pymongo </span><span class=3D"kwd" style=3D"b=
ackground-color: transparent; color: rgb(0, 0, 139); ">import</span><span c=
lass=3D"pln" style=3D"background-color: transparent; "> </span><span class=
=3D"typ" style=3D"background-color: transparent; color: rgb(43, 145, 175); =
">Connection</span><span class=3D"pln" style=3D"background-color: transpare=
nt; "><br><br>connection </span><span class=3D"pun" style=3D"background-col=
or: transparent; ">=3D</span><span class=3D"pln" style=3D"background-color:=
 transparent; "> </span><span class=3D"typ" style=3D"background-color: tran=
sparent; color: rgb(43, 145, 175); ">Connection</span><span class=3D"pun" s=
tyle=3D"background-color: transparent; ">()</span><span class=3D"pln" style=
=3D"background-color: transparent; "><br>db </span><span class=3D"pun" styl=
e=3D"background-color: transparent; ">=3D</span><span class=3D"pln" style=
=3D"background-color: transparent; "> connection</span><span class=3D"pun" =
style=3D"background-color: transparent; ">[</span><span class=3D"str" style=
=3D"background-color: transparent; color: rgb(128, 0, 0); ">'db-name'</span=
><span class=3D"pun" style=3D"background-color: transparent; ">]</span><spa=
n class=3D"pln" style=3D"background-color: transparent; "><br>collections <=
/span><span class=3D"pun" style=3D"background-color: transparent; ">=3D</sp=
an><span class=3D"pln" style=3D"background-color: transparent; "> db</span>=
<span class=3D"pun" style=3D"background-color: transparent; ">.</span><span=
 class=3D"pln" style=3D"background-color: transparent; ">subName<br>entries=
 </span><span class=3D"pun" style=3D"background-color: transparent; ">=3D</=
span><span class=3D"pln" style=3D"background-color: transparent; "> collect=
ions</span><span class=3D"pun" style=3D"background-color: transparent; ">[<=
/span><span class=3D"str" style=3D"background-color: transparent; color: rg=
b(128, 0, 0); ">'collection-name'</span><span class=3D"pun" style=3D"backgr=
ound-color: transparent; ">]</span><span class=3D"pln" style=3D"background-=
color: transparent; "><br></span><span class=3D"kwd" style=3D"background-co=
lor: transparent; color: rgb(0, 0, 139); ">print</span><span class=3D"pln" =
style=3D"background-color: transparent; "> entries <br></span><span class=
=3D"com" style=3D"background-color: transparent; color: gray; "># &gt; Coll=
ection(Database(Connection('localhost', 27017), u'db-name'), u'subName.coll=
ection-name')</span><span class=3D"pln" style=3D"background-color: transpar=
ent; "><br><br></span><span class=3D"kwd" style=3D"background-color: transp=
arent; color: rgb(0, 0, 139); ">for</span><span class=3D"pln" style=3D"back=
ground-color: transparent; "> entry </span><span class=3D"kwd" style=3D"bac=
kground-color: transparent; color: rgb(0, 0, 139); ">in</span><span class=
=3D"pln" style=3D"background-color: transparent; "> entries</span><span cla=
ss=3D"pun" style=3D"background-color: transparent; ">.</span><span class=3D=
"pln" style=3D"background-color: transparent; ">find</span><span class=3D"p=
un" style=3D"background-color: transparent; ">():</span><span class=3D"pln"=
 style=3D"background-color: transparent; "><br>&nbsp; &nbsp; </span><span c=
lass=3D"kwd" style=3D"background-color: transparent; color: rgb(0, 0, 139);=
 ">pass</span><span class=3D"pln" style=3D"background-color: transparent; "=
><br></span></code></pre><p style=3D"font-size: 14px; clear: both; word-wra=
p: break-word; color: rgb(0, 0, 0); font-family: Arial, 'Liberation Sans', =
'DejaVu Sans', sans-serif; text-align: left; ">The iterator fails even thou=
gh I don't do anything with the&nbsp;<code style=3D"padding: 1px 5px; backg=
round-color: rgb(238, 238, 238); font-family: Consolas, Menlo, Monaco, 'Luc=
ida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans M=
ono', 'Courier New', monospace, serif; ">entry</code>&nbsp;objects:</p><pre=
 class=3D"lang-py prettyprint" style=3D"margin-bottom: 10px; padding: 5px; =
font-size: 14px; background-color: rgb(238, 238, 238); font-family: Consola=
s, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', =
'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; overflow: auto=
; width: auto; max-height: 600px; color: rgb(0, 0, 0); line-height: 18px; t=
ext-align: left; "><code style=3D"font-family: Consolas, Menlo, Monaco, 'Lu=
cida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans =
Mono', 'Courier New', monospace, serif; "><span class=3D"typ" style=3D"back=
ground-color: transparent; color: rgb(43, 145, 175); ">Traceback</span><spa=
n class=3D"pln" style=3D"background-color: transparent; "> </span><span cla=
ss=3D"pun" style=3D"background-color: transparent; ">(</span><span class=3D=
"pln" style=3D"background-color: transparent; ">most recent call last</span=
><span class=3D"pun" style=3D"background-color: transparent; ">):</span><sp=
an class=3D"pln" style=3D"background-color: transparent; "><br></span><span=
 class=3D"typ" style=3D"background-color: transparent; color: rgb(43, 145, =
175); ">File</span><span class=3D"pln" style=3D"background-color: transpare=
nt; "> </span><span class=3D"str" style=3D"background-color: transparent; c=
olor: rgb(128, 0, 0); ">"/Users/../mongo.py"</span><span class=3D"pun" styl=
e=3D"background-color: transparent; ">,</span><span class=3D"pln" style=3D"=
background-color: transparent; "> line </span><span class=3D"lit" style=3D"=
background-color: transparent; color: rgb(128, 0, 0); ">27</span><span clas=
s=3D"pun" style=3D"background-color: transparent; ">,</span><span class=3D"=
pln" style=3D"background-color: transparent; "> </span><span class=3D"kwd" =
style=3D"background-color: transparent; color: rgb(0, 0, 139); ">in</span><=
span class=3D"pln" style=3D"background-color: transparent; "> </span><span =
class=3D"pun" style=3D"background-color: transparent; ">&lt;</span><span cl=
ass=3D"pln" style=3D"background-color: transparent; ">module</span><span cl=
ass=3D"pun" style=3D"background-color: transparent; ">&gt;</span><span clas=
s=3D"pln" style=3D"background-color: transparent; "><br>&nbsp; </span><span=
 class=3D"kwd" style=3D"background-color: transparent; color: rgb(0, 0, 139=
); ">for</span><span class=3D"pln" style=3D"background-color: transparent; =
"> entry </span><span class=3D"kwd" style=3D"background-color: transparent;=
 color: rgb(0, 0, 139); ">in</span><span class=3D"pln" style=3D"background-=
color: transparent; "> entries</span><span class=3D"pun" style=3D"backgroun=
d-color: transparent; ">.</span><span class=3D"pln" style=3D"background-col=
or: transparent; ">find</span><span class=3D"pun" style=3D"background-color=
: transparent; ">():</span><span class=3D"pln" style=3D"background-color: t=
ransparent; "><br></span><span class=3D"typ" style=3D"background-color: tra=
nsparent; color: rgb(43, 145, 175); ">File</span><span class=3D"pln" style=
=3D"background-color: transparent; "> </span><span class=3D"str" style=3D"b=
ackground-color: transparent; color: rgb(128, 0, 0); ">"/Library/Python/2.7=
/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/cursor.py"</=
span><span class=3D"pun" style=3D"background-color: transparent; ">,</span>=
<span class=3D"pln" style=3D"background-color: transparent; "> line </span>=
<span class=3D"lit" style=3D"background-color: transparent; color: rgb(128,=
 0, 0); ">778</span><span class=3D"pun" style=3D"background-color: transpar=
ent; ">,</span><span class=3D"pln" style=3D"background-color: transparent; =
"> </span><span class=3D"kwd" style=3D"background-color: transparent; color=
: rgb(0, 0, 139); ">in</span><span class=3D"pln" style=3D"background-color:=
 transparent; "> next<br></span><span class=3D"typ" style=3D"background-col=
or: transparent; color: rgb(43, 145, 175); ">File</span><span class=3D"pln"=
 style=3D"background-color: transparent; "> </span><span class=3D"str" styl=
e=3D"background-color: transparent; color: rgb(128, 0, 0); ">"/Library/Pyth=
on/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymongo/cursor=
.py"</span><span class=3D"pun" style=3D"background-color: transparent; ">,<=
/span><span class=3D"pln" style=3D"background-color: transparent; "> line <=
/span><span class=3D"lit" style=3D"background-color: transparent; color: rg=
b(128, 0, 0); ">742</span><span class=3D"pun" style=3D"background-color: tr=
ansparent; ">,</span><span class=3D"pln" style=3D"background-color: transpa=
rent; "> </span><span class=3D"kwd" style=3D"background-color: transparent;=
 color: rgb(0, 0, 139); ">in</span><span class=3D"pln" style=3D"background-=
color: transparent; "> _refresh<br></span><span class=3D"typ" style=3D"back=
ground-color: transparent; color: rgb(43, 145, 175); ">File</span><span cla=
ss=3D"pln" style=3D"background-color: transparent; "> </span><span class=3D=
"str" style=3D"background-color: transparent; color: rgb(128, 0, 0); ">"/Li=
brary/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.8-intel.egg/pymo=
ngo/cursor.py"</span><span class=3D"pun" style=3D"background-color: transpa=
rent; ">,</span><span class=3D"pln" style=3D"background-color: transparent;=
 "> line </span><span class=3D"lit" style=3D"background-color: transparent;=
 color: rgb(128, 0, 0); ">686</span><span class=3D"pun" style=3D"background=
-color: transparent; ">,</span><span class=3D"pln" style=3D"background-colo=
r: transparent; "> </span><span class=3D"kwd" style=3D"background-color: tr=
ansparent; color: rgb(0, 0, 139); ">in</span><span class=3D"pln" style=3D"b=
ackground-color: transparent; "> __send_message<br></span><span class=3D"ty=
p" style=3D"background-color: transparent; color: rgb(43, 145, 175); ">File=
</span><span class=3D"pln" style=3D"background-color: transparent; "> </spa=
n><span class=3D"str" style=3D"background-color: transparent; color: rgb(12=
8, 0, 0); ">"/Library/Python/2.7/site-packages/pymongo-2.3-py2.7-macosx-10.=
8-intel.egg/pymongo/helpers.py"</span><span class=3D"pun" style=3D"backgrou=
nd-color: transparent; ">,</span><span class=3D"pln" style=3D"background-co=
lor: transparent; "> line </span><span class=3D"lit" style=3D"background-co=
lor: transparent; color: rgb(128, 0, 0); ">111</span><span class=3D"pun" st=
yle=3D"background-color: transparent; ">,</span><span class=3D"pln" style=
=3D"background-color: transparent; "> </span><span class=3D"kwd" style=3D"b=
ackground-color: transparent; color: rgb(0, 0, 139); ">in</span><span class=
=3D"pln" style=3D"background-color: transparent; "> _unpack_response<br></s=
pan><span class=3D"typ" style=3D"background-color: transparent; color: rgb(=
43, 145, 175); ">UnicodeDecodeError</span><span class=3D"pun" style=3D"back=
ground-color: transparent; ">:</span><span class=3D"pln" style=3D"backgroun=
d-color: transparent; "> </span><span class=3D"str" style=3D"background-col=
or: transparent; color: rgb(128, 0, 0); ">'utf8'</span><span class=3D"pln" =
style=3D"background-color: transparent; "> codec can</span><span class=3D"s=
tr" style=3D"background-color: transparent; color: rgb(128, 0, 0); ">'t dec=
ode byte 0xfc in position 744: invalid start byte<br></span></code></pre><p=
 style=3D"font-size: 14px; clear: both; word-wrap: break-word; color: rgb(0=
, 0, 0); font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; =
text-align: left; ">I'm not the creator of the database I'm trying to query=
. Does anybody know what I'm doing wrong and how I can fix it? Thanks.</p>
------=_Part_161_14727303.1349383242885--

------=_Part_160_4193433.1349383242885--