看文件學爬蟲 8 python與mongoDB

2021-09-25 15:42:06 字數 4400 閱讀 4998

**:

nosql簡介 安裝

官網:

把mongodb加入系統路徑

配置資料庫路徑: mongod -dbpath e:\mongodb\data\db 引數

描述–bind_ip

繫結ip

–logpath

指定存放log的路徑

使用追加方式寫日誌

–dbpath

指定mongodb的儲存路徑

–port

指定埠號,預設27017

–servicename

指定服務名稱

–install

作為乙個windows服務安裝

啟動資料庫mongo

pip install pymongo
mongodb的使用

mongodb中文件、集合、資料庫的概念

sql概念

mongodb概念

說明database

database

資料庫table

collection

資料庫表/集合

rowdocument

資料行/文件

column

field

資料字段列/域

index

index

索引primary_key

primary_key

主鍵/mongodb自動將_id欄位設定為主鍵

文件1:

}

文件2:

}

文件3:

}

文件注意事項:

文件的鍵值對是有序的, 順序不同文件亦不同

文件區分大小寫以及值型別

文件的鍵是用雙引號標識的字串

除個別例外, 可用任意utf-8字元

集合注意事項:

集合名不能是空字串

集合名不能含有"\0"(空字元), 這個字元用來標識集合的結尾

集合名不能以"system."開頭, 這是為系統集合保留的字首

"$"被保留, 存在特別含義, 最好不要用來命名集合

mongodb常見的資料型別

資料型別

描述string

字串。儲存資料常用的資料型別。在 mongodb 中, utf-8 編碼的字串才是合法的。

integer

整型數值。用於儲存數值。根據你所採用的伺服器, 可分為 32 位或 64 位。

boolean

布林值。用於儲存布林值(真/假)。

double

雙精度浮點值。用於儲存浮點值。

array

用於將陣列或列表或多個值儲存為乙個鍵。

timestamp

時間戳。記錄文件修改或新增的具體時間。

object

用於內嵌文件。

null

用於建立空值。

date

binary data

二進位制資料。用於儲存二進位制資料。

建立/刪除資料庫

use database_name # # 切換到指定資料庫, 沒有則建立
show dbs # 顯示有資料的資料庫
db.dropdatabase()
集合中文件的增刪改查
db.collection_name.insert(document)

db.user.insert()
db.collection_name.find().pretty()

db.user.find()

db.user.find().pretty()

表示式

查詢方式

例項等於

# 從user集合中找到age等於18的文件db.user.find().pretty()

}不等於

# 從user集合中找到age不等於18的文件db.user.find(}).pretty()

}小於

# 從user集合中找到age小於18的文件db.user.find().pretty()

}小於或等於

# 從user集合中找到age小於或等於18的文件db.user.find().pretty()

}大於

# 從user集合中找到age大於18的文件db.user.find().pretty()

}大於或等於

# 從user集合中找到age大於或等於18的文件db.user.find().pretty()

db.collection_name.find().pretty()

# 查詢name為xujunhao, 同時age大於18的文件

db.user.find(,"name":"xujunhao"}).pretty()

db.collection_name.find(,]}).pretty()

db.user.find(},

]}).pretty()

db.user.find(,

$or:[,]

}).pretty()

db.collection_name.remove(

query, # 刪除之前先查詢, 如果沒有查詢條件, 則刪除所有

)

刪除name為xujunhao的文件

db.user.remove()
使用python操作mongodb

安裝mongodb第三方庫

pip install pymongo

匯入pymongo
from pymongo import mongoclient

建立連線
client = mongoclient()

client = mongoclient(『localhost』, 27017)

client = mongoclient(『mongodb://localhost:27017/』)

獲取資料庫
db = client.xujunhao_db

db = client[『xujunhao_db』]

獲取乙個集合
user_collection = db.user

user_collection = db[『user』]

插入文件
user = 

user_id = user_collection.insert(user)

users = [

,,,]user_id = user_collection.insert(users)

查詢文件
collection.find_one()返回一條或者none

res = user_collection.find_one()

print(res)

collection.find() 返回多條或者none

res = user_collection.find()

for i in res:

print(i)

collection.find().count() 返回條數

num = user_collection.find().count()

print(num)

修改文件
res = user_collection.update(,})
刪除文件
res = user_collection.remove()

print(res)

看文件學爬蟲 3 CSS選擇器

什麼是css選擇器 一種快速定位元素的方法 css選擇器的基本用法 用法示例 說明 解釋 選擇所有元素 class.intro 解釋 選擇所有class intro 的元素 id firstname 解釋 選擇所有id firstname 的元素 elementp 解釋 選擇所有 p 元素 not ...

跟著scrapy文件學爬蟲(2)

前面寫了一篇起步的跟著scrapy文件學爬蟲 1 了,隔了好久才又過來需更了。scrapy是通過scrapy命令列來進行控制的,這裡我們稱之為 scrapy tool 來區別子命令。對於子命令,我們直接稱之為 commands 或 scrapy commands 出於不同的需求,scrapy too...

看android developers文件總結

android developers 文件裡面有用的東西的東西的一些歸納 home google給我們的乙個warm welcome,enjoy it。大家都懂的,略啦。dev guide 這個裡面內容就有點看頭了,對android通覽了一遍,基本上全都涉及到了。dev guide裡的 framew...