scrapy框架开发中pipelines模块将数据写入记事本中

理论知识:

用于处理spider中获取的items,可以对获取的数据进行进一步处理(将获取的items保存至文件或者数据库等)如果要使用pipelines模块中定义的各pipelines类,必须在settings模块中指定,格式如下:pipeline的权重值越小优先级越高

代码部分:

  1. 创建一个新的项目 test1 命令:scrapy startproject test1
  1. 重写items.py文件,定义title属性
python 复制代码
import scrapy


class Test1Item(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    title=scrapy.Field()
  1. 修改setting文件,指定要使用的pipeline对应的类。将下面这行代码解注释
python 复制代码
ITEM_PIPELINES = {
   "test1.pipelines.Mytest": 300,
}
  1. 在spider目录下创建爬虫文件myspider.py 命令:scrapy genspider -t basic myspider baidu.com
python 复制代码
import scrapy
from test1.items import Test1Item

class MyspiderSpider(scrapy.Spider):
    name = "myspider"
    allowed_domains = ["sina.com.cn"]
    start_urls = ["http://sina.com.cn/"]

    def parse(self, response):
        item = Test1Item()
        item['title'] = response.xpath("/html/head/title").extract_first()
        print(item['title'])
        yield item
  1. 重写pipeline.py文件
python 复制代码
import codecs

class Mytest(object):
    def __init__(self):
        self.file = codecs.open("C:/Users/Administrator/lxj/test.txt","wb",encoding="utf-8")

    def process_item(self, item, spider):
        ll=str(item)+'\n'
        self.file.write(ll)
        return item
    def close_spider(self,spider):
        self.file.close()
  1. 执行行爬虫文件 命令:scrapy crawl myspider --nolog
相关推荐
傻啦嘿哟6 天前
天气数据爬虫:基于Scrapy爬取全国天气,做可视化大屏
c++·爬虫·scrapy
小白学大数据8 天前
拼多多反爬对抗实战:Scrapy 中间件化采集架构解析
开发语言·scrapy·中间件·架构
毕业设计7039 天前
(免费领源码)django空气净化器销售系统09218- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
python·scrapy·mysql·pycharm·django·flask·pandas
v:PLLucky2016 天前
农作物病虫害检测识别系统
深度学习·scrapy·算法·百度·微信公众平台
TomEval20 天前
【测AI】第05篇:Python 爬虫进阶 —— 动态页面爬取与 Scrapy 框架
人工智能·爬虫·python·scrapy·自动化
Data_Journal1 个月前
使用 AutoScraper 进行网页抓取:分步教程
大数据·开发语言·数据库·python·scrapy
Data_Journal1 个月前
如何将网页抓取用于机器学习
大数据·开发语言·数据库·python·scrapy
圆脸脸lxj1 个月前
scrapy框架开发中pipelines模块将数据写入mysql数据库中
scrapy
深蓝电商API1 个月前
Scrapy 架构源码解析
爬虫·scrapy