在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

scrapy数据存储在mysql数据库的方式是什么

118次阅读
没有评论

共计 1857 个字符,预计需要花费 5 分钟才能阅读完成。

scrapy 数据存储在 mysql 数据库的方式是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

这篇文章主要介绍了 scrapy 数据存储在 mysql 数据库的两种方式 (同步和异步),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着丸趣 TV 小编来一起学习学习吧。

方法一:同步操作

1.pipelines.py 文件 (处理数据的 python 文件)

import pymysqlclass LvyouPipeline(object):def __init__(self):# connection databaseself.connect = pymysql.connect(host= XXX , user= root , passwd= XXX , db= scrapy_test) # 后面三个依次是数据库连接名、数据库密码、数据库名称# get cursorself.cursor = self.connect.cursor()print( 连接数据库成功)def process_item(self, item, spider):# sql 语句 insert_sql = insert into lvyou(name1, address, grade, score, price) VALUES (%s,%s,%s,%s,%s) # 执行插入数据到数据库操作 self.cursor.execute(insert_sql, (item[ Name], item[Address], item[Grade], item[Score],item[Price]))# 提交,不进行提交无法保存到数据库 self.connect.commit()def close_spider(self, spider):# 关闭游标和连接 self.cursor.close()self.connect.close()

2. 配置文件中

方式二 异步储存

pipelines.py 文件:

通过 twisted 实现数据库异步插入,twisted 模块提供了 twisted.enterprise.adbapi

1. 导入 adbapi。

2. 生成数据库连接池。

3. 执行数据数据库插入操作。

4. 打印错误信息,并排错。

import pymysqlfrom twisted.enterprise import adbapi# 异步更新操作 class LvyouPipeline(object):def __init__(self, dbpool):self.dbpool = dbpool@classmethoddef from_settings(cls, settings): # 函数名固定,会被 scrapy 调用,直接可用 settings 的值 数据库建立连接:param settings: 配置参数:return: 实例化参数 adbparams = dict(host=settings[ MYSQL_HOST],db=settings[MYSQL_DBNAME],user=settings[MYSQL_USER],password=settings[MYSQL_PASSWORD],cursor >

注意:

1、python 3.x 不再支持 MySQLdb,它在 py3 的替代品是:import pymysql。

2、报错 pymysql.err.ProgrammingError: (1064, ……

原因:当 item[quotes] 里面含有引号时,可能会报上述错误。

解决办法:使用 pymysql.escape_string() 方法。

例如:

sql = INSERT INTO video_info(video_id, title) VALUES(%s , %s) %(video_info[ id],pymysql.escape_string(video_info[ title]))

3、存在中文的时候,连接需要添加 charset= utf8,否则中文显示乱码。

4、每执行一次爬虫,就会将数据追加到数据库中,如果多次的测试爬虫,就会导致相同的数据不断累积,怎么实现增量爬取?

scrapy-deltafetch

scrapy-crawl-once(与 1 不同的是存储的数据库不同)

scrapy-redis

scrapy-redis-bloomfilter(3 的增强版,存储更多的 url, 查询更快)

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-17发表,共计1857字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 97精品伊人久久大香线蕉app | sao虎影院网站入口在线观看 | 无码精品黑人一区二区三区 | 久草新在线观看 | 无码乱人伦一区二区亚洲一 | 久久精品精品 | 精品丝袜人妻久久久久久 | 成人福利视频网站 | 国产性生大片免费观看性 | 国产精品无打码在线播放 | 天堂在线最新版资源www | 一区二区三区国产精品 | 被伴郎的内捧猛烈进出h视频 | 99re久久资源最新地址 | 国产仑乱无码内谢 | 色婷婷综合久久久 | 4438xx亚洲最大五色丁香 | 国产精品亚韩精品无码a在线 | 99久久超碰中文字幕伊人 | 欧美日韩一区二区高清视 | 黄色在线视频免费 | 国产偷v国产偷v亚洲高清 | 色yeye香蕉凹凸视频在线观看 | 欧美激情人成日本在线视频 | 日韩精品一区在线 | 天天草天天操 | 国产美女做a免费视频软件 国产美女做爰免费视 | 天堂成人网| 97精品人妻系列无码人妻 | 亚洲第一免费网站 | 亚洲国产精品毛片av不卡在线 | 精品久久久中文字幕人妻 | 丰满少妇aaaaaa爰片毛片 | 观看毛片 | 欧美肥妇多毛bbw | 韩国免费α一级一片 | 欧美亚洲综合视频 | 成人无码午夜在线观看 | 国产思思久久 | 日本一区视频在线观看 | 久草最新网址 |