zoukankan      html  css  js  c++  java
  • 数据存储 mysql

    数据存储 mysql

    一、MySQL 同步存储

    二、MySQL 异步存储

     1 from scrapy import log
     2 import pymysql
     3 import pymysql.cursors
     4 import codecs
     5 from twisted.enterprise import adbapi
     6 
     7 class MysqlTwistedPipeline(object):
     8 
     9     @classmethod
    10     def from_settings(cls, settings):
    11         dbargs = dict(
    12             host=settings['MYSQL_HOST'],
    13             db=settings['MYSQL_DBNAME'],
    14             user=settings['MYSQL_USER'],
    15             passwd=settings['MYSQL_PASSWD'],
    16             port=settings['MYSQL_PORT'],
    17             charset='utf8',
    18             cursorclass=pymysql.cursors.DictCursor,
    19             use_unicode=True,
    20         )
    21         dbpool = adbapi.ConnectionPool('pymysql', **dbargs)
    22         return cls(dbpool)
    23 
    24 
    25     def __init__(self,dbpool):
    26         self.dbpool=dbpool
    27 
    28     #pipeline默认调用
    29     def process_item(self, item, spider):
    30         d=self.dbpool.runInteraction(self._conditional_insert, item, spider)#调用插入的方法
    31         log.msg("-------------------连接好了-------------------")
    32         d.addErrback(self._handle_error,item,spider)#调用异常处理方法
    33         d.addBoth(lambda _: item)
    34         return d
    35 
    36     def _conditional_insert(self, conn, item, spider):
    37         log.msg("-------------------打印-------------------")
    38 
    39         conn.execute("insert into MovieInfo (poster, name, director, actor, tag_char, score, critics_num,) values(%s, %s, %s,%s,%s,%s,%s,)",
    40                      (item['cover'], item['title'], item['region'], item['years'], item['types'], item['score'], item['comment_num'],))
    41         log.msg("-------------------一轮循环完毕-------------------")
    42     def _handle_error(self, failue, item, spider):
    43         print(failue)
    MySQL 异步存储
  • 相关阅读:
    6-5-1
    static的作用
    第五小题:北京某高校。。。。
    机票预订系统问题定义及可行性分析
    银行储蓄系统问题定义及可行性分析
    软件工程和计算机科学的区别
    中文编码--中国程序员之”银弹“?
    开博第一日
    【转载】大牛很通俗地介绍《信号与系统》
    matlab绘图简单笔记
  • 原文地址:https://www.cnblogs.com/guozepingboke/p/10794705.html
Copyright © 2011-2022 走看看