成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

用Python做一個慕客視頻解析搜索工具并放在自己的主頁上(一)

xiao7cn / 816人閱讀

摘要:剛走完第一步,后面還有很多需要做,如最主要的視頻鏈接獲取,文檔獲取,富文本獲取,請求優(yōu)化等,具體的且看后面的文章吧

用Python做一個慕客視頻解析搜索工具并放在自己的主頁上 -- 介紹與分析

中國大學(xué)MOOC慕客 是一個大學(xué)生在線課程學(xué)習(xí)平臺,在這上面可以查看在線課程視頻,不過有些視頻由于開課時間的原因,結(jié)束后是不能觀看的

所以要查看的話只能通過技術(shù)手段對其進(jìn)行解析

完成后的工具如下
慕客視頻解析搜索工具 - 鏈接

下面就項目的大體內(nèi)容進(jìn)行介紹

搭建自己的網(wǎng)站

首先要搭建自己的網(wǎng)站,當(dāng)然也可以先跳過這一步,先在本機(jī)上跑起來
由于后面都是用Python語言寫的,所以需要搭建一個python web服務(wù)器
筆者使用的是flask +nginx + uwsgi+ gevent
相應(yīng)的教程可參考這篇教程 阿里云部署 Flask + WSGI + Nginx 詳解
如果想使用Tornado的可以自己搜索相應(yīng)教程
由于flask比較輕便易上手,筆者就用flask來開發(fā)了

慕客網(wǎng)站的內(nèi)容及相應(yīng)的內(nèi)容信息組成

第一步很明顯就是要明白如何如爬取慕客視頻網(wǎng)站的內(nèi)容及相應(yīng)的內(nèi)容信息組成

首先看 "數(shù)據(jù)結(jié)構(gòu) -- 浙江大學(xué)" 這個課程的鏈接

http://www.icourse163.org/cou...

從后段的鏈接可以看出,課程的主要信息在于 ZJU-93001?tid=1002019005
其中ZJU是學(xué)校的代號,即代表浙江大學(xué)
93001是課程的編號,即代表數(shù)據(jù)結(jié)構(gòu)這門課程對應(yīng)的id,這里我們稱之為cid
1002019005很明顯就是一個tid了,與93001相同的是,這個id也是唯一的,不同的是tid代表的是課程的學(xué)期id,即termId
tid實際的內(nèi)容是代表第幾次開課,當(dāng)我們點擊其他次數(shù)開課時,可以看到93001是不變的,唯獨tid變了

初窺慕客的課程內(nèi)容獲取

我們要獲取課程的內(nèi)容,由上面可以看出,需要有cid和tid,由于請求課程的時候需要用到tid,
下面介紹一下只有cid的情況下如何獲取tid,只有cid的情況下如何拼出整個鏈接

先打開http://www.icourse163.org/cou... 這個網(wǎng)站
按F12進(jìn)行分析,可以看到一開始的請求是這樣子的

Request URL:http://www.icourse163.org/cou...
Request Method:GET

對當(dāng)前網(wǎng)頁右鍵,查看源代碼
找到tid和couseid的部分

可以看到
termId對應(yīng)的那行就是tid了,是當(dāng)前頁面的tid,如果鏈接沒加tid,一般是最新的tid
courseDto里id那行那就的就是couseid,即cid了

可以用Python的正則表達(dá)式庫re對內(nèi)容進(jìn)行處理
這里拋磚引玉一下

couseId_pattern = re.compile("window.termDto.*?termId.*?"(d+)",re.S)

由些我們可以通過cid獲取到tid了
整個過程耗時在網(wǎng)頁請求上,但時間只有100多毫秒,基本可以忽略了

從上面我們所講的cid其實是包含了學(xué)校代號的,即ZJU-93001而不是93001,當(dāng)我們只有
93001的時候如何得到ZJU-93001從而能拼出網(wǎng)頁進(jìn)行訪問解析呢?
由于慕客在對鏈接進(jìn)行處理時是把ZJU忽略的,只從符號"-"后開始處理,所以我們是通過可以在93001前加個"-"來拼出整個網(wǎng)頁,即http://www.icourse163.org/cou...也是可以訪問到網(wǎng)頁的

理解了最基本的課程代碼組成,后面解析出來的信息也就容易看了。

剛走完第一步,后面還有很多需要做,
如最主要的視頻鏈接獲取,文檔獲取,富文本獲取,請求優(yōu)化等,具體的且看后面的文章吧

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/40647.html

相關(guān)文章

  • [譯]學(xué)習(xí)Python編程19個資源

    摘要:它需要將近美元才能買到,但是你可以下載免費的和版本。在需要花費美元來開始你的學(xué)習(xí),將會有超過頁的內(nèi)容和個多小時的視頻供你訪問,還包括以后可以免費更新。 showImg(https://segmentfault.com/img/bVrJpw); 用Python編寫代碼一點都不難,事實上它一直被贊譽為最容易學(xué)的編程語言。如果你準(zhǔn)備學(xué)習(xí)web開發(fā), Python是一個不錯的開始,甚至想做游戲...

    xiguadada 評論0 收藏0
  • 紐約蹭飯手冊:怎樣利Python和自動化腳本在紐約省錢又省心?

    摘要:會解釋怎樣使用邏輯回歸,隨機(jī)森林,和自動化腳本,但都不會深入。這使我在紐約地區(qū)積累了超過名粉絲,并且仍在快速增長。我收集了個帳戶,這些帳戶發(fā)布了許多關(guān)于紐約的優(yōu)質(zhì)圖片。以下面這兩篇帖子為例這兩個帖子來自同一個紐約的帳戶。 showImg(https://segmentfault.com/img/remote/1460000019393373); 在家做飯不下館子可以減少開支已經(jīng)是公開的...

    Xufc 評論0 收藏0
  • ??爬蟲+自動化利器 selenium 之自學(xué)成才篇()??

    文章目錄 selenium 簡介selenium安裝安裝瀏覽器驅(qū)動確定瀏覽器版本下載驅(qū)動 定位頁面元素打開指定頁面id 定位name 定位class 定位tag 定位xpath 定位css 定位link 定位partial_link 定位 瀏覽器控制修改瀏覽器窗口大小瀏覽器前進(jìn)&后退瀏覽器刷新瀏覽器窗口切換常見操作 鼠標(biāo)控制單擊左鍵單擊右鍵雙擊拖動鼠標(biāo)懸停 鍵盤控制 seleni...

    james 評論0 收藏0
  • 重磅 | 完備 AI 學(xué)習(xí)路線,最詳細(xì)資源整理!

    摘要:是你學(xué)習(xí)從入門到專家必備的學(xué)習(xí)路線和優(yōu)質(zhì)學(xué)習(xí)資源。的數(shù)學(xué)基礎(chǔ)最主要是高等數(shù)學(xué)線性代數(shù)概率論與數(shù)理統(tǒng)計三門課程,這三門課程是本科必修的。其作為機(jī)器學(xué)習(xí)的入門和進(jìn)階資料非常適合。書籍介紹深度學(xué)習(xí)通常又被稱為花書,深度學(xué)習(xí)領(lǐng)域最經(jīng)典的暢銷書。 showImg(https://segmentfault.com/img/remote/1460000019011569); 【導(dǎo)讀】本文由知名開源平...

    荊兆峰 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<