scrapy框架学习(六)日志设置和数据存储
2024-09-08 13:42:54
日志设置
CRITICAL : 严重错误
ERROR : 一般错误
WARNING : 警告
INFO : 一般的信息
DEBUG : 调试信息
默认的显示级别是DEBUG
# 设置错误显示级别
LOG_LEVEL = 'DEBUG'
# 将日志信息写到文件中,不要显示到屏幕中
LOG_FILE = 'log.txt'
数据存储
在pipelines.py文件中创建3个函数
def open_spider(self,spider) 爬虫启动时会调用此方法
def close_spider(self,spider) 爬虫结束时会调用此方法
def download(self,item) 自己构建的下载文件的方法
# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html # useful for handling different item types with a single interface
from itemadapter import ItemAdapter import json
import os
import urllib.request class MyfirstScrapydemoPipeline: #爬虫启动时会调用此方法
def open_spider(self,spider):
print('爬虫启动')
self.fp= open('qiushibaike.txt','w',encoding='utf8') def process_item(self, item, spider):
#下载头像图片
self.download(item)
#将数据转化为字典
obj= dict(item)
#将字典数据装换为json格式
string= json.dumps(obj,ensure_ascii=False)
#将数据写入文件
self.fp.write(string+'\n')
#不注释return item时只会下载第一页的头像
#return item def download(self,item):
#定义头像图片存放路径
dirpath= r'F:\python_project\爬虫\myfirst_scrapyDemo\myfirst_scrapyDemo\spiders\头像'
#获取每一张图片的名称
name= item['name']+'.jpg'
#拼接每一张头像图片的存储路径
filepath=os.path.join(dirpath,name)
#下载头像图片
urllib.request.urlretrieve(item['face_src'],filepath) # 爬虫结束时会调用此方法
def close_spider(self,spider):
print('爬虫结束')
self.fp.close()
最新文章
- Redis在windows下安装过程
- Java 分页通用
- 【转载】PHP 开发者该知道的 5 个 Composer 小技巧
- Android 自定义Popupwindow 注意事项,手机和平板的区别
- XE6移动开发环境搭建之IOS篇(5):解决Windows和虚拟机下Mac OSX的共享问题(有图有真相)
- 检测端口状态的python脚本
- [css] haslayout
- qt 获取系统磁盘空间大小
- 关于<;ul>;<;ol>;<;li>;的用法
- ubuntu 下使用mysql
- tomcat7 启动报错(转)
- MySql表操作常用语法
- java IO之 序列流 集合对象Properties 打印流 流对象
- STL -->; vector向量
- Django 视图层
- vue2 商城首页轮播图切换
- 同一台机器安装多个zabbix-agentd
- PHP PC端微信扫码支付【模式二】详细教程-附带源码(转)
- final与abstract关键字
- eclipse/STS 切换目录视图