Scrapy入门(二)创建Scrapy项目
生活随笔
收集整理的這篇文章主要介紹了
Scrapy入门(二)创建Scrapy项目
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
創建項目
在開始爬取之前,您必須創建一個新的Scrapy項目。進入您打算存儲代碼的目錄中,運行下列命令:
scrapy startproject tutorial該命令將會創建包含下列內容的 tutorial 目錄:
tutorial/scrapy.cfgtutorial/__init__.pyitems.pypipelines.pysettings.pyspiders/__init__.py...這些文件分別是:
- scrapy.cfg: 項目的配置文件
- tutorial/: 該項目的python模塊。之后您將在此加入代碼。
- tutorial/items.py: 項目中的item文件.
- tutorial/pipelines.py: 項目中的pipelines文件.
- tutorial/settings.py: 項目的設置文件.
- tutorial/spiders/: 放置spider代碼的目錄.
在默認生成的spiders目錄下新建heartsong_spider.py,我們的爬蟲就寫在這里面,因為是介紹,那么此處就寫個簡單的下載網站的主頁,讓大家能運行一下,感受一下scrapy。
import scrapyclass HeartsongSpider(scrapy.spiders.Spider):name = "heartsong" # 爬蟲的名字,執行時使用allowed_domains = ["heartsong.top"] # 允許爬取的域名,非此域名的網頁不會爬取start_urls = ["http://www.heartsong.top" # 起始url,此例只爬這一個頁面 ]def parse(self, response): # 真正的爬蟲方法html = response.body # response是獲取到的來自網站的返回# 以下四行將html存入文件filename = "index.html"file = open(filename, "w")file.write(html)file.close()要說明的是,這個類不是隨心所欲來寫的,name,allowed_domains,start_urls,都是類似于”重載”的值。也就是說,scrapy內部會檢測這些變量的值,變量名不可以起成其它的名字,類似的變量之后還會有介紹。至于parse方法,就是重載的父類的方法,我們爬蟲的主體一般就寫在這里面。
好,現在讓我們來運行它
在命令行中進入heartsong目錄下,執行命令
最簡單存儲爬取的數據的方式是使用 Feed exports:
scrapy crawl dmoz -o items.json該命令將采用 JSON 格式對爬取的數據進行序列化,生成 items.json 文件。
總結
以上是生活随笔為你收集整理的Scrapy入门(二)创建Scrapy项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Scrapy入门(一)安装Scrapy环
- 下一篇: Scrapy匹配xpath时tbody标