這裡就不給大家廢話了,直接上代碼,代碼的解釋都在注釋裡面,看不懂的也別來問我,好好學學基礎知識去!
代碼如下:
# -*- coding: utf-8 -*-
#---------------------------------------
# 程式:百度貼吧爬蟲
# 版本:0.1
# 作者:why
# 日期:2013-05-14
# 語言:Python 2.7
# 操作:輸入帶分頁的地址,去掉最後面的數字,設定一下起始頁數和終點頁數。
# 功能:下載對應頁碼內的所有頁面並儲存為html檔案。
#---------------------------------------
import string, urllib2
#定義百度函數
def baidu_tieba(url,begin_page,end_page):
for i in range(begin_page, end_page+1):
sName = string.zfill(i,5) + '.html'#自動填滿成六位的檔案名稱
print '正在下載第' + str(i) + '個網頁,並將其儲存為' + sName + '......'
f = open(sName,'w+')
m = urllib2.urlopen(url + str(i)).read()
f.write(m)
f.close()
#-------- 在這裡輸入參數 ------------------
# 這個是山東大學的百度貼吧中某一個文章的地址
#bdurl = 'http://tieba.baidu.com/p/2296017831?pn='
#iPostBegin = 1
#iPostEnd = 10
bdurl = str(raw_input(u'請輸入貼吧的地址,去掉pn=後面的數字:\n'))
begin_page = int(raw_input(u'請輸入開始的頁數:\n'))
end_page = int(raw_input(u'請輸入終點的頁數:\n'))
#-------- 在這裡輸入參數 ------------------
#調用
baidu_tieba(bdurl,begin_page,end_page)
以上就是python抓取百度貼吧的一段簡單的代碼,非常的實用吧,各位可以自行擴充下。