極客學院-python利器-東野圭吾《白夜行》小說爬蟲制作

Date:2016-11-28
By:Black Crow

前言:

極客學院的課程開始了有一段時間,但是第一節(jié)的作業(yè)就難倒我了,所以對于作業(yè),我是遲遲沒有動手來做的。本次的作業(yè)是第三部分的課程作業(yè),與《python實戰(zhàn)計劃》不同的是,極客學院的老師授課的抓取核心是采用“l(fā)xml”抓取“XPATH”的方式實現(xiàn)(python實戰(zhàn)計劃主要是Beautifulsoup+css selector的方式)。這部分課程算是填補了空白區(qū)域。本次作業(yè)的代碼是首次使用類來寫的,對于類的使用還不是很熟練,需要多加練習。學習期間跟《python實戰(zhàn)計劃》班上遇到的同學蝸牛仔交流了很多,也學到了很多,有人一起學習的感覺還是不錯的。

作業(yè)效果:

white.png

我的代碼:

import requests
import lxml.html
class GetNovel():
def init(self):
self.filepath = 'F://python/white.txt'
self.page = 'http://www.dongyeguiwu.com/books/baiyexing/53.html/'
def GetPageUrls(self):
page = self.page
urllist =[]
for i in range (1,7):
pageurl = page +str(i)
urllist.append(pageurl)
return urllist
def GetPageContent(self,url):
r = requests.get(url)
selector = lxml.html.fromstring(r.text)
contents = selector.xpath('//div[@class="readtext"]/p/text()')
return contents
def WriteFile(self,contents):
for content in contents:
with open(self.filepath,'a+') as file:
file.write(content+'\n')
a = GetNovel()
for i in a.GetPageUrls():
a.WriteFile(a.GetPageContent(i))


####總結(jié):
>1. 關(guān)于類的使用上,還是不太熟練,對于代碼部分,感覺還有很大的改進空間,后面還是要多用。
2. XPATH處理上感覺還是很精準的,beautifulsoup使用時調(diào)試還是花了不少時間,XPATH就定位精準很多了。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容