github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化

ncov_2019_spider

2019 冠狀病毒疫情爬蟲。疫情數據可視化。


項目背景

疫情數據分析


數據來源

丁香醫生,從1.24號開始採集入庫,所以工程包含了24號後的數據。

數據展示


github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


技術棧

  1. mongodb 用於存儲採集數據
  2. mysql 5.7 用於存儲從mogodb採集的數據
  3. python 3.7 採集數據和轉換mongodb數據到mysql
  4. 工程在win10 和 macOS 下測試通過。

FAQ

  1. 為什麼要用2套數據庫
    一部分用戶不知道使用nosql。包括作者自己在做一些查詢的時候還是sql來得順手。

聯繫方式

WeChat : ajun-guo


安裝和部署

mongodb 用於採集的數據庫入庫

安裝方法for mac :https://www.runoob.com/mongodb/mongodb-osx-install.html 啟動mongo 方法: mongod --dbpath d:/workspace/mongodb export PATH=/usr/local/mongodb/bin:$PATH && sudo mongod

mysql server安裝

卸載mysql(非必要操作)
<code>sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*
networksetup -setairportpower en0 off && networksetup -setairportpower en0 on

下載 : http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.10-osx10.9-x86_64.dmg
安裝方法:https://www.cnblogs.com/kimbo/p/8724595.html
root@localhost: 4O=ucCLx9y%3
/usr/local/mysql-5.7.10-osx10.9-x86_64/bin/<code>
重置mysql密碼(非必要操作)
<code>1. 關閉mysql服務
sudo /usr/local/mysql/support-files/mysql.server stop 或者系統偏好裡有個 MySQL 裡關閉
2.來到mysql目錄下
/usr/local/mysql-5.7.10-osx10.9-x86_64/bin
3.得到權限
sudo su
4.重啟mysql服務
./mysqld_safe --skip-grant-tables &? 或者在系統編號中開啟
5.重開終端
mysql -uroot -p (提示輸入密碼時隨便輸入即可
6. 拿到權限(可以修改密碼)
flush privileges;
7.修改密碼
set password for 'root'@'localhost'=password('root');
set password for 'root'@'localhost'=password('root');
/<code>

安裝navicat for mysql

下載地址:http://www.pc6.com/mac/111878.html 打開終端,輸入:sudo spctl --master-disable 回車,打開偏好設置的安全性與隱私,允許任何來源,重新打開Navicat for MySQL就OK了

安裝python依賴包

python3 -m pip install -r requirements.txt

工程說明

crawler.py 是爬蟲啟動的入口文件 python crawler.py 啟動後,就會循環不間斷爬取,將數據入庫到mongo

spider.py 是mongo 2 mysql 做數據轉換的 主要是方便可以使用sql 做數據查詢和研究。 也需要啟動,啟動實時轉換數據到mysql python spider.py

數據庫名稱:ncov 查詢實例見:業務.sql

表 :

  1. dxyarea 省級數據
  2. dxyarea_city 地市級數據
  3. dxyoverall 疫情數據概覽

github項目推薦|2019 冠狀病毒疫情爬蟲。疫情數據可視化


啟動工程

  1. 啟動數據庫 export PATH=/usr/local/mongodb/bin:$PATH && sudo mongod
  2. 啟動數據轉換(mongo 2 mysql) cd /Users/HE/Desktop/ncov_spider/ && python3 spider.py
  3. 啟動爬蟲(每天都要啟動爬,啟動不關機就會一直爬每天自動) cd /Users/HE/Desktop/ncov_spider/ && python3 main.py

以上3個命令,都開啟一個新的終端執行。


項目地址:https://github.com/junguoguo/ncov_2019_spider


分享到:


相關文章: