Python 插件式的信息爬蟲 Beehive

?? 一群不辭勞苦採花小蜜蜂

代碼地址:

wangshub/beehive?

github.com圖標

本項目運行在可以運行在本地或者伺服器端,將不同插件程序獲取的信息如:每日天氣、新聞等,通過 Github Api 上傳到倉庫進行保存。

當然,你還可以你日常機械重複性的勞動在插件中幫你完成,比如煮咖啡、發郵件等等,真是棒極了。

額外收穫 :定期穩定運行在伺服器上,還可以每日貢獻一次 Github 貢獻度 ... 點亮你的人生!

工程說明

├── app│ └── plugins│ └── weather.py├── builtin_plugins├── config│ └── config.json├── main.py└── upload_github.py

  • main.py : 載入 builtin_plugins/app/ 下的插件;
  • app/plugins/ : 插件程序存放路徑;
  • builtin_plugins : 內置插件路徑;
  • upload_github.py : 通過 Github Api 提交一次 Commit;

使用步驟

  • 生成 Github Token
  • 運行代碼

python main.py

插件介面 Json 格式

可以自己補充插件,各個插件的返回值為字典類型,必須滿足如下格式

{ "code": 0, "type": "weather", "date": "2018-04-23 20:18:03", "content": { "city": "u6df1u5733", "weather": "u591au4e91", "temperature": "21 ~ 26u2103", "humidity": "u6e7fu5ea6uff1a63%", "wind": "u98ceu5411uff1au5317u98ce 2u7ea7", "radiation": "u7d2bu5916u7ebfuff1au5f31", "air": "PM: 43" }}

參數說明

  • code: 0 成功、-1 失敗;
  • type: 例如 [weather, stock, news] 等;
  • date: 當天日期,如 2018-05-01
  • content: 獲取的 Json 格式信息,這部分提交到倉庫保存;

Todo

  • Python 插件化信息管理,可拓展;
  • 信息保存到 Github 倉庫;
  • 更多插件補充;
  • Docker 一鍵部署到本地或伺服器;
  • 信息可視化
    • Pyeacharts 網頁顯示
    • Gitpage 靜態頁面每日渲染
  • Itchat 微信推送
    • 自動登錄
    • 自動推送
    • 信息查詢
  • 補充插件內容
    • 插件思路收集
    • 大新聞日常備份
    • 商品價格記錄插件

最後:歡迎 F**k 和 Star

推薦閱讀:

Flutter為何選擇Dart?
Programming Languages: Application and Interpretation【譯17】【完】
Programming Languages: Application and Interpretation【譯16】
PLAI 目錄

TAG:Python | python爬蟲 | 程序設計語言設計 |