爬虫之Scrapy基本应用

本文介绍如何使用Python的Scrapy框架搭建一个简单的爬虫项目,包括安装必要组件、定义数据结构、创建爬虫并解析数据等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.首先安装以下package,

pip3 install wheel
pip3 install lxml
pip3 install pyopenssl
pip3 install Twisted
pip3 install pywin32
pip3 install scrapy

2.创建scrapy项目:以mySpider项目为例:

scrapy startproject mySpider

会生成以下文件:

scrapy.cfg :项目的配置文件

mySpider/ :项目的Python模块,将会从这里引用代码

mySpider/items.py :项目的目标文件

mySpider/pipelines.py :项目的管道文件

mySpider/settings.py :项目的设置文件

mySpider/spiders/ :存储爬虫代码目录

3.在items文件中定义数据字段:

class MytianyaItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    #定义字段名为email
    email=scrapy.Field()
    pass

4.使用scrapy genspider mytianya "bbs.tianya.cn"创建一个爬虫文件()
mytianya:为爬虫名
"bbs.tianya.cn":为域名
5.mytianya .py文件名:

class GettianyaEmailSpider(scrapy.Spider):
    #爬虫名
    name = 'getTianYa_email'
    #要爬的网址域名
    allowed_domains = ['bbs.tianya.cn']
    #要爬的网址
    start_urls = ['http://bbs.tianya.cn/post-140-393968-1.shtml']

    def parse(self, response):
        # email正则表达式
        emailre='[0-9a-z_]+@[0-9a-z]+\.[a-z]{2,4}'
        emailList=re.findall(emailre,response.body.decode('utf-8'),re.I)
        #items中的生成字段名的类,实例化
        item=MytianyaItem()
        for email in emailList:
            item['email']=email
            # print(email)
            yield item
            # print(email)

6.保存数据:

#保存为json数据
scrapy crawl mytianya -o mytianya.json
#保存为csv数据
scrapy crawl mytianya -o mytianya.csv
#保存为想xml数据
scrapy crawl mytianya -o mytianya.xml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值