- 實(shí)戰(zhàn)Python網(wǎng)絡(luò)爬蟲(chóng)
- 黃永祥
- 349字
- 2019-11-22 18:44:44
7.3 緩存的存儲(chǔ)機(jī)制
Requests-Cache支持sqlite、redis和mongoDB數(shù)據(jù)庫(kù)存儲(chǔ)緩存信息,此外,還可以將緩存存儲(chǔ)在計(jì)算機(jī)的內(nèi)存中。也就是說(shuō)Requests-Cache支持4種不同的存儲(chǔ)機(jī)制:memory、sqlite、redis和mongoDB,4種存儲(chǔ)機(jī)制說(shuō)明如下:
● memory:每次程序運(yùn)行都會(huì)將緩存以字典的形式保存在內(nèi)存中,程序運(yùn)行完畢,緩存也隨之銷(xiāo)毀。
● sqlite:將緩存存儲(chǔ)在sqlite數(shù)據(jù)庫(kù),這是Requests-Cache默認(rèn)的存儲(chǔ)機(jī)制。
● redis:將緩存存儲(chǔ)在redis數(shù)據(jù)庫(kù),通過(guò)redis模塊實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫(xiě)。
● mongoDB:將緩存存儲(chǔ)在mongoDB數(shù)據(jù)庫(kù),通過(guò)pymongo模塊實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫(xiě)。
在Requests-Cache設(shè)置不同的存儲(chǔ)機(jī)制只需對(duì)install_cache()方法的參數(shù)backend進(jìn)行設(shè)置即可,具體設(shè)置如下:

如果選擇redis或mongoDB作為存儲(chǔ)介質(zhì),還需要分別安裝redis模塊或pymongo模塊,這兩個(gè)模塊均可通過(guò)pip指令安裝,同時(shí)也要保證本地計(jì)算機(jī)已安裝redis或mongoDB數(shù)據(jù)庫(kù)。
除此之外,Requests-Cache還提供了其他功能函數(shù),讀者可以在Requests-Cache的源碼文件(Lib\site-packages\requests_cache\core.py)找到相關(guān)函數(shù)以及說(shuō)明。
- Java程序設(shè)計(jì)(慕課版)
- .NET之美:.NET關(guān)鍵技術(shù)深入解析
- 深度實(shí)踐OpenStack:基于Python的OpenStack組件開(kāi)發(fā)
- 從零開(kāi)始:數(shù)字圖像處理的編程基礎(chǔ)與應(yīng)用
- INSTANT FreeMarker Starter
- Android Application Development Cookbook(Second Edition)
- AutoCAD VBA參數(shù)化繪圖程序開(kāi)發(fā)與實(shí)戰(zhàn)編碼
- Android Native Development Kit Cookbook
- Hands-On Natural Language Processing with Python
- Advanced Oracle PL/SQL Developer's Guide(Second Edition)
- Practical Game Design with Unity and Playmaker
- Raspberry Pi Robotic Projects(Third Edition)
- Go語(yǔ)言底層原理剖析
- 進(jìn)入IT企業(yè)必讀的324個(gè)Java面試題
- Yii2 By Example