Scrapy學習筆記(一)
1.安裝scrapy框架:
1.安裝scrapy:打開命令行,執行pip install scrapy
即可安裝。
2.如果在windows下,還需要安裝pypiwin32
,如果不安裝,那麼以後運行scrapy項目的時候就會報錯。安裝方式:pip install pypiwin32
。
2.創建項目和爬蟲:
1.創建項目:scrapy startproject[爬蟲的名字]
。
這裏我創建了一個名叫 jingdong的scrapy項目:
默認生成的文件:
1.items.py:用來存放爬蟲爬取下來數據的模型。
2.middlewares.py:用來存放各種中間件的文件。
3.pipelines.py:用來將items的模型存儲到本地磁盤中。
4.settings.py:本爬蟲的一些配置信息(比如請求頭、多久發送一次請求、ip代理池等)
5.scrapy.cfg:項目的配置文件。
6.spiders包:以後所有的爬蟲,都是存放到這個裏面。
2.創建爬蟲:進入到項目所在的路徑,執行命令:scrapy genspider[爬蟲名字][ 爬蟲的域名]
。注意,爬蟲名字不能和項目名稱一致。
創建了一個名叫jingdong_spider的用來爬取京東的文件
![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20200222214813121.png
這就是初始化好的jingdong_spider.py文件
3.修改兩個重要的參數
通過pycharm,打開項目所在文件,打開settings.py
第一個參數ROBOTSTXT_OBEY=False
,默認是True,把它修改成False
第二個參數DEFAULT_REQUEST_HEADERS
添加請求頭信息Use-Agent
4.創建一個scrapy爬取京東小案例
代碼如下:
# -*- coding: utf-8 -*-
import scrapy
from urllib import request
class JingdongSpiderSpider(scrapy.Spider):
name = 'jingdong_spider'
allowed_domains = ['jd.com']
start_urls = ['https://search.jd.com/Search?keyword=nike%E7%94%B7%E9%9E%8B&enc=utf-8&suggest=7.his.0.0&wq=&pvid=db4cab5a0eb941caace0a1a48ae70dae']
def parse(self, response):
shoes_lists=response.xpath('//li[@class="gl-item"]//img/@source-data-lazy-img')
for item in shoes_lists:
picture = "https:"+item.get()
name = picture.split('/')[-1]
request.urlretrieve(picture,'E:\爬蟲\jindong_nike\\'+name)
print('='*60)
寫完後,我們通過命令行來運行下scrapy crawl jingdong_spider
jingdong_spider是一個.py文件,我們用過命令行來運行,不過在此之間,要先進入到所創建的scrapy項目文件下(否則,無效),我的項目在jingdong的文件夾下
這裏是一些scrapy爬取所生成的信息:
效果如下: