Scrapy是一個強大的Python爬蟲框架,用于從網站上抓取數據。要開始使用Scrapy,請按照以下步驟操作:
安裝Scrapy: 在命令行中輸入以下命令以安裝Scrapy:
pip install scrapy
創建一個新的Scrapy項目: 在命令行中,導航到您希望創建項目的目錄,然后輸入以下命令:
scrapy startproject my_project
這將創建一個名為my_project
的新Scrapy項目。您可以將my_project
替換為您喜歡的項目名稱。
創建一個新的爬蟲:
在項目目錄中,輸入以下命令以創建一個名為my_spider
的新爬蟲:
cd my_project
scrapy genspider my_spider example.com
這將創建一個名為my_spider
的新爬蟲,并將其配置為從example.com
抓取數據。您可以將my_spider
和example.com
替換為您喜歡的爬蟲名稱和目標網站。
編輯爬蟲文件:
打開my_project/spiders/my_spider.py
文件并編輯它。以下是一個簡單的爬蟲示例:
import scrapy
class MySpider(scrapy.Spider):
name = 'my_spider'
start_urls = ['http://example.com/']
def parse(self, response):
self.log('Visited %s' % response.url)
for quote in response.css('div.quote'):
item = {
'author_name': quote.css('span.text::text').extract_first(),
'author_url': quote.xpath('span/small/a/@href').extract_first(),
}
yield item
next_page = response.css('li.next a::attr(href)').extract_first()
if next_page is not None:
yield scrapy.Request(url=response.urljoin(next_page), callback=self.parse)
這個爬蟲從example.com
抓取引用,并將作者的名字和URL存儲在item中。然后,它遞歸地訪問下一頁以繼續抓取更多引用。
運行爬蟲: 在項目目錄中,輸入以下命令以運行爬蟲:
scrapy crawl my_spider
這將啟動爬蟲并開始從目標網站抓取數據。您可以使用scrapy crawl
命令運行其他爬蟲,只需將my_spider
替換為您要運行的爬蟲名稱即可。
保存數據:
Scrapy默認將抓取的數據保存到名為items.json
的文件中。您還可以將數據保存到其他文件格式,例如CSV或XML。要指定輸出文件,請在運行爬蟲時使用-o
選項,如下所示:
scrapy crawl my_spider -o output.json
這只是Scrapy的基本用法。Scrapy還提供了許多高級功能,如中間件、管道、選擇器等,以幫助您更有效地抓取和處理數據。要了解更多關于Scrapy的信息,請參閱官方文檔:https://docs.scrapy.org/