Python数据爬虫学习笔记(16)Scrapy快速入门

1、新建Scrapy项目,进入CMD,通过指令进入存放项目的目录,输入命令:

scrapy startproject firstScrapy 

firstScrapy是爬虫项目的名称。

2、新建爬虫文件,通过指令进入爬虫项目所在目录,输入指令:

scrapy genspider -t basic ZYH baidu.com

ZYH是爬虫文件的名称,baidu.com是爬虫的限制网址。

3、通过Pycharm打开创建的Scrapy项目。

4、编写itmes.py:该文件主要用于定义爬虫的元素,如爬取的数据。

import scrapy
class FirstscrapyItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    content=scrapy.Field()
    link=scrapy.Field()

5、编写pipelines.py:该文件主要用于定义数据处理过程,如对爬取的content元素进行输出。

class FirstscrapyPipeline(object):
    def process_item(self, item, spider):
        print(item["content"])
        return item

6、编写(修改)settings.py:该文件主要对Scrapy项目进行设置,将其中的:

1)设置拒绝遵守robots协议:

# Obey robots.txt rules
ROBOTSTXT_OBEY = False

2)启用pipelines(默认是不启用的,直接去掉对应代码注释即可):

#设置pipelines启用
ITEM_PIPELINES = {
    'firstScrapy.pipelines.FirstscrapyPipeline': 300,
}

7、编辑创建的爬虫文件,本文为ZYH.py

import scrapy
#导入items.py文件中的FirstscrapyItem类,目的能够是找到content变量
from firstScrapy.items import FirstscrapyItem
class ZyhSpider(scrapy.Spider):
    name = 'ZYH'
    allowed_domains = ['baidu.com']
    start_urls = ['http://www.baidu.com/']
    def parse(self, response):
        #实例化FirstscrapyItem类
        item=FirstscrapyItem()
        #设置XPath语句进行爬取
        item["content"]=response.xpath("/html/head/title/text()").extract()
        #返回item,该语句非常重要,注意是yield不是return
        yield item

8、运行爬虫项目,在CMD中,输入scrapy crawl ZYH --nolog,即可查看爬虫结果:

E:\Scrapy\firstScrapy>scrapy crawl ZYH --nolog
['百度一下,你就知道']

猜你喜欢

转载自blog.csdn.net/Smart3S/article/details/82934879