問題 一:
在pymongo中使用find是得到1個游標物件的,如果你想實現mongodb shell中find操作,例如:
>db.test.find()
在pymongo中需要使用find_one方法而不是find方法:
>>>print db.test.find_one()>>>print db.test.find()
0x7f4ac789e450>
>>> result =
>>> for x in
db.test.find():
>>>print(result)
>>> [,...]
所以在pymongo中,如果判斷一條資料是否存在。這樣寫是錯誤的。因為find返回的是游標,條件判斷永遠成立。
ifself.db[self.ids_seen].find(data):
raise dropitem(
"duplicate item found: %s
" %item['
title
'])
正確的寫法是這樣的。
ifself.db[self.ids_seen].find_one(data):
raise dropitem(
"duplicate item found: %s
" %item['
title
'])
問題 二:
self.db 取到資料庫。
self.db 可以直接中括號表示 資料庫中的表。 self.db [ ' username' ] . find_one( )
關於pymongo的一些問題
本人最近使用新接觸python的pymongo模組連線mongoldb來進行資料操作。第一次接觸,可以說是屢屢碰壁,現對於一些問題進行總結。言歸正傳。先引入pymongo模組和mongoclient,連線mongo還有一種方法是連connection,但可能版本問題,本人引入後報錯不存在,這裡暫且不...
關於巨集的一些說明
巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 格式 define 識別符號 字串 其中的識別符號就是所謂的符號常量,也稱為 巨集名 預處理 預編譯 工作也叫做巨集展開 將巨集名替換為字串。掌握 巨集 概念的關鍵是 替換 一切以替換為前提。預處理器是先於編譯器執行的 例 define pi 3.14 ...
關於ID PHOTO FORMAT的一些說明
新近上傳了乙個老作品 年前的東東,翻硬碟的時候找到的,見 包含兩個程式 乙個是用來製作模版的,可以讓你自己根據不同的 尺寸和證件照大小來作乙個模版 比如 製作乙個 吋大小的證件照模版,只要跑到照相館印一張 吋照,你回家自己就能裁出幾十張證件照 另乙個是用來生成輸出檔案的,可以載入上面那個程式製作好的...