Scrapy用mysql存储的小技巧
来源:互联网 发布:mac svn图形化界面 编辑:程序博客网 时间:2024/06/01 07:39
只要你的Scrapy Field字段名字和 数据库字段的名字 一样。那么恭喜你你就可以拷贝这段SQL拼接脚本。进行MySQL入库处理。
def process_item(self, item, spider): if isinstance(item, WhoscoredNewItem): table_name = item.pop('table_name') col_str = '' row_str = '' for key in item.keys(): col_str = col_str + " " + key + "," row_str = "{}'{}',".format(row_str, item[key] if "'" not in item[key] else item[key].replace("'", "\\'")) sql = "insert INTO {} ({}) VALUES ({}) ON DUPLICATE KEY UPDATE ".format(table_name, col_str[1:-1], row_str[:-1]) for (key, value) in six.iteritems(item): sql += "{} = '{}', ".format(key, value if "'" not in value else value.replace("'", "\\'")) sql = sql[:-2] self.cursor.execute(sql) #执行SQL self.cnx.commit()# 写入操作
第一个for循环 item的key作为mysql字段名字 value 作为字段的VALUES值
第二个for循环 实现了字段名=VALUES的拼接
和第一个for循环的中的sql就组成了 insert into XXXXX on duplicate key update 这个。存在则更新 不存在则插入的SQL语句。
0 0
- Scrapy用mysql存储的小技巧
- mysql小技巧、存储过程
- mysql的几个小技巧
- mysql 上的小技巧
- mysql常用的小技巧
- mysql的一些小技巧
- 用Python Scrapy爬取某电影网站并存储入mysql
- Scrapy爬虫(九):scrapy的调试技巧
- MosaicDataset的高效存储显示小技巧
- SP存储数据的小技巧
- 【MySQL】跟MySQL交互的小技巧
- Scrapy使用的一些技巧
- 【Scrapy-03】布隆过滤器、存储数据库以及其他一些图片爬取的技巧
- 基于scrapy的小爬虫
- phpMyAdmin管理mysql的有用小技巧
- 一个 mysql server 上的小技巧
- MYSQL数据库设计的一些小技巧
- mysql数据库的实用SQL小技巧
- greenDAO3 中使用关系
- 汉诺塔 (杭电acm2064)
- jQuery之Callbacks函数功能测试
- leetcode118 Pascal's Triangle
- 【DP】洛谷 P1064 金明的预算方案
- Scrapy用mysql存储的小技巧
- 设计模式之备忘录模式
- 布局css 标签重置以及类的初始化模板
- java 导出Excel
- spring boot (一)快速入门
- 《Effective java 第2版》读书笔记--创建/销毁对象
- C++标准输入输出流控制字符的使用
- 你现在就该学习Python
- 解析./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt