import urllib2
import urllib
import re
class spilder:
def __init__(self):
self.page=1#初始頁是1
self.switch=true#如果是true就開始爬
def loadpage(self):
url=""+str(self.page)+".html"
print url
request=urllib2.request(url,headers=headers)
response=urllib2.urlopen(request)
html=response.read()
#將正則匹配物件應用到html原始碼字串中,返回這個頁面的所有段子的列表
pattern=re.compile('(.*?)
',re.s)
content_list=pattern.findall(html)
#呼叫dealpage()替換掉段子裡的雜七雜八
self.dealpage(content_list)
def dealpage(self,content_list):
"""處理爬來的頁面中的段子
content_list:每頁的段子列表集合"""
print u"正在處理頁面......"
for item in content_list:
#將集合中的每個段子進行處理,替換掉多餘的符號
item=item.replace("","").replace("
","").replace("
","").replace("
","")
self.writepage(item)
def writepage(self,item):
"""把每一條段子寫入檔案裡
item:處理後的每一條段子"""
print u"正在儲存段子"
#寫入檔案內
with open("duanzi.txt","a") as f:#a是可讀可寫,要是用w的話,duanzi.txt中的內容每次都會被下乙個覆蓋
f.write(item)
def duanzispilder(self):
"""控制爬蟲的進行"""
while(self.switch):
self.loadpage()
command=raw_input(("如果繼續爬取,請輸入回車(退出輸入quit)").encode("gb18030"))
if command=="quit":
self.switch=false#變成false就可以結束爬取
self.page+=1#page自加
print u"謝謝使用...."
if __name__=="__main__":
we=spilder()
we.duanzispilder()
6 內涵段子 爬蟲
內涵段子爬蟲實戰 要求 能爬取一頁資料即可 proxyhandler處理器 設定 很多 會檢測某一段時間某個ip的訪問次數 通過流量統計,系統日誌等 如果訪問次數多的不像正常人的訪問,它會禁止這個ip的訪問。所以我們可以設定一些 伺服器,每隔一段時間換乙個 就算ip被禁止,依然可以換個ip繼續爬取。...
內涵段子打不開了怎麼回事?內涵段子為什麼被下架了?
程式設計驛站 www.cppcns.com 注 最近,今日頭條可以說是徹底栽了。昨天下午,今日頭條剛收到暫停程式設計客棧 3 周的處分,今天就又被責令關停內涵段子。作為旁觀者的小編都忍不住要點一首涼涼送www.cppcns.com給它 今天下午,國家廣播電視總局官微發布公告,稱在督察 今日頭條 整改...
網路段子爬蟲程式
本文參考了以下資料 urllib2庫的基本使用 傳智播客黑馬社群 urllib2庫的基本使用 所謂網頁抓取,就是把url位址中指定的網路資源從網路流中讀取出來,儲存到本地。在python中,我們使用urllib2這個元件來抓取網頁。urllib2 官方文件 urllib2 原始碼 時間花在學習正規表...