scrapy异步写入mysql_scrapy之异步写入数据库
1 setting.py文件,写入数据库连接属性# mysql连接属性
MYHOST = '127.0.0.1'
MYUSER = 'root'
MYPASSWORD = '123'
MYDB = 'temp'
2 pipelines.py文件,写入管道
首先导入# 异步数据库操作api
from twisted.enterprise import adbapi
import MySQLdb.cursors
编写管道# 异步写入mysql pipeline
class TwistedCnblogMysqlPipeline(object):
def __init__(self,dbpool):
self.dbpool = dbpool
# 方法名是固定的,类方法,该方法优先于__init__执行
@classmethod
def from_settings(cls, settings):
db_config = dict(
#变量名固定
host = settings['MYHOST'],
user = settings['MYUSER'],
passwd = settings['MYPASSWORD'],
db = settings['MYDB'],
charset = 'utf8',
cursorclass = MySQLdb.cursors.DictCursor,
)
# 数据库连接池
dbpool = adbapi.ConnectionPool('MySQLdb' ,**db_config)
return cls(dbpool)
def process_item(self,item,spider):
# 异步插入操作
query = self.dbpool.runInteraction(self.insert,item)
query.addErrback(self.handle_error)
return item
# 插入操作
def insert(self,cursor,item):
sql = '插入语句'
cursor.execute(sql)
#错误处理函数
def handle_error(self,error):
print str(error)
3 settings.py文件,加入该管道
scrapy异步写入mysql_scrapy之异步写入数据库相关推荐
- node.js同步文件写入、异步文件写入、简单文件写入、简单文件读取、流式文件写入、流式文件读取、fs模块的其他方法
fs(文件系统 File System) 使用文件系统,需要先引入fs模块,fs是核心模块,直接引入不需要下载 fs模块中所有的操作都有两种形式可供选择(同步和异步) 同步文件会阻塞程序的执行,也就是 ...
- python异步编程视频_asyncio异步编程【含视频教程】
Python Python开发 Python语言 asyncio异步编程[含视频教程] 不知道你是否发现,身边聊异步的人越来越多了,比如:FastAPI.Tornado.Sanic.Django 3. ...
- Python异步: 什么时候使用异步?(3)
从广义上讲,Asyncio 是新的.流行的.讨论广泛的和令人兴奋的.然而,对于何时应该在项目中采用它存在很多困惑. 我们什么时候应该在 Python 中使用 asyncio? 1. 在 Python ...
- python 异步io_Python中的异步IO:完整的演练
python 异步io Async IO is a concurrent programming design that has received dedicated support in Pytho ...
- 【免杀前置课——Windows编程】十四、异步IO——什么是异步IO、API定位问题、APC调用队列
异步IO 异步IO 异步I/0注意事项: 定位问题 总解决方案 APC调用队列 异步IO 当我们读取一个文件时,一般情况下,线程是阻塞的,也就是说,当前线程在等待文件读取操作结束,这种方式叫同步IO. ...
- Verilog实现FIFO专题5-异步FIFO设计(异步FIFO工作方式、异步FIFO介绍、异步FIFO介绍)
FIFO根据输入输出时钟是否一致,分为同步FIFO与异步FIFO.同步FIFO中,读写控制信号以及数据均处于同一时钟域,满足STA分析时一般不会出现亚稳态等不稳定情形:而对于异步FIFO,读写相关信号 ...
- springboot异步和切面_Spring异步编程 你的@Async就真的异步吗?异步历险奇遇记
引言有点长 前端的宝宝会用ajax,用异步编程到快乐的不行~ 我们java也有异步,用起来比他们还快乐~ 我们biaji一个注(gǒupí)解(gāoyào),也是快乐风男... 且看下面的栗子: 注 ...
- springboot异步和切面_Spring异步编程 | 你的@Async就真的异步吗 ☞ 异步历险奇遇记...
引言有点长 前端的宝宝会用ajax,用异步编程到快乐的不行~ 我们java也有异步,用起来比他们还快乐~ 我们bia~ji~一个注(gǒupí)解(gāoyào),也是快乐风男... 且看下面的栗子: ...
- springboot异步和切面_Spring异步编程 | 你的@Async就真的异步吗?异步历险奇遇记
Spring异步编程 | 你的@Async就真的异步吗?异步历险奇遇记 点击上方"java进阶架构师",选择右上角"置顶公众号" 20大进阶架构专题每日送达 引 ...
最新文章
- html显示数据库表格asp,ASP实现在WEB中显示电子表格数据 显示数据及生成HTML表格...
- 发现一个工具,可以清除 xp win7 用户密码,在PE下运行
- 图像热点(图像地图)
- 黑马lavarel教程---8、session
- you know what I mean
- UIAlertView UIActionSheet随笔笔记
- 获取执行计划的N种方式
- Android之Bitmap学习总结
- Function类型(JS高程3)—— JS学习笔记2015-6-29(第70天)
- 前端学习(1874)vue之电商管理系统电商系统之修改element-ui组件的按需导入
- Floyd算法及其应用
- 各厂商服务器ESXI最高版本适配情况
- C# DateTime 日期加1天 减一天 加一月 减一月 等方法
- Centos 搭建DNS服务器
- java环境变量的作用和含义_java环境变量的配置及各环境变量的含义 | 学步园
- [渝粤教育] 长沙航空职业技术学院 液压与气动技术 参考 资料
- 动画:用动画给面试官解释 TCP 三次握手过程
- linux定时任务每小时_linux定时任务
- ctab法提取dna流程图_CTAB法提取DNA
- 暗月内网渗透实战——项目七