這段時間在做scrapy爬蟲,對爬出來的數據基於Django做了統計與可視化,本想部署在騰訊雲上玩玩,但是因為以前沒有經驗遇到了一些問題,在這里記錄一下:
首先說下Django的創建與配置:
1. 創建Django項目: 無論想要將項目創建在哪個文件夾下,都只需要cd到制定的文件夾下執行該命令即可:django-admin startproject babel_scrapy ("babel_scrapy"是項目名稱)
2當然,僅僅創建一個項目是遠遠不夠的,一個Django項目的目錄最起碼應該是這樣的:

1>最上邊那個是項目根目錄,下邊有一個和項目名稱同名的文件夾,這個是伴隨你項目的創建而同時生成的。
2>下邊那個bscrapy文件夾是項目app,創建項目后是沒有的,需要自行創建,整個項目的后台邏輯基本上都在app中實現。
創建app時,首先應該cd到我們的django項目文件夾下,執行:python manage.py startapp bscrapy ("bscrapy"是我創建的app名稱)
3>在下面有一個staic文件夾,這個文件夾用來存放項目的一些靜態文件比如我們導入的js文件,layui文件,或者我們寫的css與js文件,
這個static最開始也是沒有的,不過創建這個文件夾不需要命令,只要在項目名上邊右鍵new-->Directory,然后將名稱寫成static即可,
當然,創建好的static是無法使用的,需要進行關聯配置,這個下邊再講。
4>下邊還有一個templates文件夾用來存放我們寫的html模板文件,也需要我們自行創建自行配置。
5>最后還有個manage.py 這是整個項目的啟動文件,是隨項目創建時而生成的,一般不需要我們去管,但是如果想要在啟動Django項目時掉用某些方法時,可以在manage.py中調用,不過不推薦。
3下面我們說說配置:
首先,我們Django啟動后肯定是想要訪問我們寫好的頁面,但是html模板文件又在templates文件夾下,所以先配置他:
我們需要將“ os.path.join(BASE_DIR, "bscrapy/../templates") ” 放在babel_scrapy文件夾下的settings.py的這個地方:
這樣,就可以找到這個文件夾了。
然后再配置babel_scrapy下的urls.py文件,這個文件,顧名思義,做路由轉發的。
再urls.py中 首先得導入一個文件,就是我們創建得bscrapy這個app下有一個views.py,這個py文件主要是負責后台邏輯實現的。
在urls.py 這樣導入這個views.py from bscrapy import views
然后在這里寫路由轉發:
這個index 是瀏覽器上的訪問路徑,比如 127.0.0.1:8000/index
這時請求就發到了urls.py處,找到這個index,然后在bscrapy這個app下的views下找這個index方法
在views.py中先導入這樣一句: from django.shortcuts import render 用來重定義,
然后再寫入這個方法,意思是重定向到index.html文件,這時,項目就會找到templates文件夾,在里邊找到index.html文件,將其呈現到瀏覽器上,這是一個頁面的訪問就結束了

當然,使用bscrapy這個app時,也需要配置,還是在settings.py中,像這樣加進去就好了:

最后,因為html頁面有時需要用到類似於layui之類的東西,所以還要配置static文件夾:
在settings中這樣寫就可以了:
這樣的話,一個Django項目就搭建起來了
下面時我這次遇到的一些問題和使用到的命令。
1:centos7關閉與開啟防火牆:
關閉: systemctl stop firewalld
開啟: systemctl start firewalld
查看狀態: systemctl status firewalld
開機禁用 : systemctl disable firewalld
想了解更多Python關於爬蟲、數據分析的內容,歡迎大家關注我的微信公眾號:悟道Python
