第一次查課程評價就上手 ask course
TRANSCRIPT
第⼀一次查課程評價就上⼿手ASK COURSE
開學囉
⾝身為⼀一個⼯工程師
不可饒恕
╮(╯_╰)╭
極簡⾵風
其實只是因為懶得做
就只是這樣?
傳統
課 程 評 價 平 台
使⽤用者
使⽤用者
使⽤用者
提供評價
查詢課程
等待者
但⼤大家都很懶
課 程 評 價 平 台
使⽤用者
使⽤用者
使⽤用者
我們怎麼做?
Facebook PTT User
Ask Course
User User User
蒐集評價
查詢課程
⽤用⼼心的評價
學⻑⾧長姊們的切⾝身之痛
不該隨時間消逝
系統架構
Crawler Python
PTT
Elasticsearch Database
Ask Course AngularJS + Flask
User User
User
PTT
Crawler Python
PTT
Elasticsearch Database
Ask Course AngularJS + Flask
User User
User
PTT
User
User
User
Flask
AngularJS
API
Crawler Python
PTT
Elasticsearch Database
Ask Course AngularJS + Flask
User User
User
PTT
Crawler
PTT PTT
FACEBOOK API
FACEBOOK POST EDIT
取得⽂文章
不同
⽐比較更新時間
存⼊入資料庫
和 DB 內相同 ID 的紀錄做⽐比較
相同
下⼀一筆
PTT
網⾴頁爬蟲?說好的 BBS 呢!!!
import telnetlib
from bs4 import BeautifulSoup
PTT網⾴頁爬蟲 怎麼寫
取得原始碼
⽂文件解析存⼊入資料庫
分析網⾴頁規則1 2
34
from bs4 import BeautifulSoup dom = BeautifulSoup(html) dom.select() dom.find()
import requests html = requests.get(url).text()
Next Page
import pyelasticsearch
Crawler Python
PTT
Elasticsearch Database
Ask Course AngularJS + Flask
User User
User
PTT
Elasticsearch
RESTful API
樹狀結構
JSON
{ "name": "linroex", "age": 18, "email": { "home": "[email protected]", "school": "[email protected]" } }
name ageemail
linroex 18home school
我
全⽂文檢索
⽀支援中⽂文
pyelasticsearch
Tips: analysis-mmseg
未來計畫
過濾無關資料
資料分析
擴⼤大資料來源
http://course.ntustsg.com/