scrapy爬取百万小说
#爬取小說實列
第一步:創建一個scrapy工程【命令行中輸入 scrapy startproject demo】
第二步:進入這個工程中,創建一個爬蟲【scrapy nss zhuangji.org】
①:nss文件
第三部:在spiders中進入到這個nss.py這個文件:
I:出現一個NssSpider類(spider.Spider),其中有三個成員變量【name&start_urls】
II:有一個parse解析的方法【用response.xpath(’’).extract_first() || .extract()】就可以了
III: yield返回字典即可{}
IV: 得到下一個url
V:再進行自身調用【yield.scrapy.Request(next_url,callback=self.parse)】【parse沒有()】
②:main文件【運行文件,extract函數】(可以為任意的名字)
【標準代碼】:
③:pipelines文件
第一步:創建并打開一個文件
第二本:進行寫入
第三部:文件的關閉
④ setttings文件
USER-AGENT: 需要重寫寫入
ROBOTTEXT_OBEY: False
ITEM_PIPELINES: 開啟(原本是注釋掉的【ctrl+/】)
爬取小說的代碼如下:
I:nss文件
Ⅱ:pipelines文件:
calss Demo3Pipeline(object):def open_spider(self,spider):self.file=open("xs.txt","w",encoding="utf-8")def process_item(self, item,spider):title=item["title"]content=item["content"]info=title+"\n"+content+"\n"self.file.write(info)return itemdef close_file(self,spider):self.file.close()爬取小說引起的問題:文件大小大于2.56M,自動中斷
解決方法:打開pacharm中的bin目錄下的idea.properties的這個文件
將dea.max.intellisense.filesize 參數改為99999
總結
以上是生活随笔為你收集整理的scrapy爬取百万小说的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vscode 常用插件
- 下一篇: 你真的懂学习吗?