Desc: scrapy_redis
1 默認(倉庫)只支持 redis server 上的 db=0 數據庫,對此做 enhance
前言
scrapy_redis
1 默認(倉庫)只支持 redis server 上的 db=0 數據庫2,對此做 enhance。
Enhance
該圖片外鏈地址備份:https://i.loli.net/2020/04/30/VmwBgLz1cuEqlxQ.png
如圖所示,只需要修改一行代碼就可以使 redis_server 支持在項目的配置中配置使用不同的數據庫。
在我提交 pull request3 之後注意到這個倉庫已經數年沒有更新代碼了。
所以這個 pull request 很可能短期不會被 merge 進去。
這是我 fork 修改的倉庫地址:https://github.com/RDpWTeHM/scrapy-redis。
如果哪一天我閒 clone 下來 install 麻煩的話,可能會在我自己的 fork 倉庫上 release 一版,但是目前似乎沒有這個必要。
Usage
安裝 enhance 後的代碼
首先需要將 scrapy_redis 的代碼 git clone
4 下來。
- 可以從原始倉庫 🔗 clone 下來,然後像本文上一節一樣修改一行代碼。
- 也可以從我 fork 修改的倉庫上 clone 下來,這樣就不需要修改代碼直接安裝即可。
在上面所述的代碼準備好了之後,就可以安裝 scrapy_redis 了。
如果之前已經通過 pip install scrapy_redis
之類的方式安裝過了的話,則安裝之前需要卸載: pip uninstall scrapy_redis
。
然後安裝:
$ cd <path>/<to>/<your>/<git clone dir>/scrapy-redis/
$ python3 setup.py sdist # optional step
$ python3 setup.py install
注意: 上文默認你知道如何適當調整命令使適合安裝到 LINUX 系統下的“全局環境”或“用戶本地環境”或“python 虛擬環境(全局或本地)”。
在 scrapy 項目中使用
默認還是使用 db=0 的 redis server 數據庫。對此不需要調整任何原本的 scrapy 項目代碼。
如果想要使用 redis server 上其它的數據庫2,比如 db=7;那麼只要在項目的 settings.py
文件中增加一行 REDIS_DB=7
即可。
如果使用not introduce the way.REDIS_URL
的方式的話,那麼無需更新 scrapy-redis 代碼就可以使用不同的數據庫。
即,原本的 settings.py
如:
REDIS_HOST = "93.214.102.22"
REDIS_PORT = 6379
# REDIS_PARAMS =
修改後:
REDIS_HOST = "93.214.102.22"
REDIS_PORT = 6379
REDIS_DB = 7
# REDIS_PARAMS =
至此,就完成了使用 redis server 的 db 7 數據庫。
Reference - N/A
n/a