国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

使用Python編寫簡單網絡爬蟲抓取視頻下載資源

2024-09-09 19:03:08
字體:
來源:轉載
供稿:網友

我第一次接觸爬蟲這東西是在今年的5月份,當時寫了一個博客搜索引擎,所用到的爬蟲也挺智能的,起碼比電影來了這個站用到的爬蟲水平高多了!

回到用Python寫爬蟲的話題。

Python一直是我主要使用的腳本語言,沒有之一。Python的語言簡潔靈活,標準庫功能強大,平??梢杂米饔嬎闫?,文本編碼轉換,圖片處理,批量下載,批量處理文本等??傊液芟矚g,也越用越上手,這么好用的一個工具,一般人我不告訴他。。。

因為其強大的字符串處理能力,以及urllib2,cookielib,re,threading這些模塊的存在,用Python來寫爬蟲就簡直易于反掌了。簡單到什么程度呢。我當時跟某同學說,我寫電影來了用到的幾個爬蟲以及數據整理的一堆零零散散的腳本代碼行數總共不超過1000行,寫電影來了這個網站也只有150來行代碼。因為爬蟲的代碼在另外一臺64位的黑蘋果上,所以就不列出來,只列一下VPS上網站的代碼,tornadoweb框架寫的 :)

[xiaoxia@307232 movie_site]$ wc -l *.py template/*
  156 msite.py
   92 template/base.html
   79 template/category.html
   94 template/id.html
   47 template/index.html
   77 template/search.html

下面直接show一下爬蟲的編寫流程。以下內容僅供交流學習使用,沒有別的意思。

以某灣的最新視頻下載資源為例,其網址是

http://某piratebay.se/browse/200

因為該網頁里有大量廣告,只貼一下正文部分內容:

對于一個python爬蟲,下載這個頁面的源代碼,一行代碼足以。這里用到urllib2庫。

>>> import urllib2
>>> html = urllib2.urlopen('http://某piratebay.se/browse/200').read()
>>> print 'size is', len(html)
size is 52977

當然,也可以用os模塊里的system函數調用wget命令來下載網頁內容,對于掌握了wget或者curl工具的同學是很方便的。

使用Firebug觀察網頁結構,可以知道正文部分html是一個table。每一個資源就是一個tr標簽。

而對于每一個資源,需要提取的信息有:

1、視頻分類
2、資源名稱
3、資源鏈接
4、資源大小
5、上傳時間

就這么多就夠了,如果有需要,還可以增加。

首先提取一段tr標簽里的代碼來觀察一下。

<tr>
  <td class="vertTh">
   <center>
    <a href="/browse/200" title="此目錄中更多">視頻</a><br />
    (<a href="/browse/205" title="此目錄中更多">電視</a>)
   </center>
  </td>
  <td>
<div class="detName">   <a href="/torrent/7782194/The_Walking_Dead_Season_3_Episodes_1-3_HDTV-x264" class="detLink" title="細節 The Walking Dead Season 3 Episodes 1-3 HDTV-x264">The Walking Dead Season 3 Episodes 1-3 HDTV-x264</a>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 寻甸| 南通市| 霞浦县| 革吉县| 游戏| 六盘水市| 武定县| 信阳市| 天峻县| 马鞍山市| 临沧市| 伊春市| 来凤县| 丰都县| 岳西县| 陆川县| 祥云县| 静安区| 永宁县| 浦东新区| 罗江县| 灵寿县| 乐都县| 老河口市| 弥勒县| 昭通市| 双江| 临猗县| 青阳县| 建瓯市| 永昌县| 密云县| 靖安县| 德昌县| 霸州市| 开江县| 海晏县| 永平县| 沂源县| 彭泽县| 淮北市|