`
zhimaruanjian
  • 浏览: 32657 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

芝麻HTTP:MySQL存储

 
阅读更多

只要你的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()# 写入操作

 这个SQL拼接实现了,如果数据库存在相同数据则 更新,不存在则插入 的SQL语句

具体实现就是第一个for循环,获取key作为MySQL字段名字、VALUES做为SQL的VALUES(拼接成一个插入的SQL语句)

第二个for循环,实现了 字段名 = VALUES的拼接。

和第一个for循环的中的sql就组成了 insert into  XXXXX   on duplicate key update 这个。存在则更新 不存在则插入的SQL语句。

 

 

分享到:
评论

相关推荐

    毕业论文设计-IT计算机-php+mysql学生成绩查询(系统).zip

    在这个学生成绩查询系统中,MySQL用于存储和管理学生信息、课程信息以及成绩数据。开发者可以利用SQL(Structured Query Language)来创建、更新和查询数据库。 3. Web开发框架:虽然未明确提及,但通常这样的项目...

    查立得万能查(php+mysql) v20220512.zip

    在这款工具中,MySQL被用作存储和检索查询数据的后端,支持对大量数据进行高效管理。 3. 源码源代码:压缩包中的源代码是程序的核心部分,由开发者编写的原始指令集,用于控制软件的功能和行为。通过查看和分析源...

    基于Javaweb实现的芝麻开门博客网源码+数据库.zip

    在这个项目中,MySQL存储了博客文章、用户信息等数据。 - **ER(实体关系)模型**:设计数据库时,可能使用了ER模型来定义实体、属性和关系,确保数据结构的合理性和高效性。 - **SQL(Structured Query Language...

    程序自动化-连接MySQL数据库时自动开启服务器-Python实例源码.zip

    网络爬虫经常需要将抓取的数据存储到数据库中,Python的`requests`库用于发送HTTP请求,`BeautifulSoup`或`lxml`库解析HTML,然后使用MySQL存储数据。在Python脚本中,可以先启动MySQL服务,再进行爬虫数据的入库...

    毕业设计论文-IT计算机-教材订购系统(jsp+servlet+mysql)-源码.zip

    在这个系统中,MySQL存储了教材信息、用户信息、订单信息等各种数据。开发者使用SQL语句进行数据的增删改查操作,保证了数据的一致性和完整性。 4. **B/S架构**:即Browser/Server(浏览器/服务器)架构,用户通过...

    毕业论文设计-IT计算机-php+mysql学生成绩查询系统(源代码+论文).zip

    通过深入学习这个项目,不仅可以掌握PHP编程语言的基本语法和面向对象的设计,还能了解如何使用MySQL进行数据存储和查询,以及如何将两者结合以实现Web应用。此外,还可以借鉴毕业设计的整体流程,为自己的项目提供...

    芝麻开门博客网.zip

    了解如何使用数据库(如MySQL、MongoDB)存储和检索数据,以及如何实现API接口供前端调用。 3. **前端框架**:利用React、Vue或Angular等现代前端框架,提升开发效率和用户体验。理解组件化开发思想,掌握状态管理...

    【Java web】芝麻开门博客网.zip

    3. **JDBC与数据库交互**:为了存储博客文章、用户信息等,项目可能使用了关系型数据库如MySQL。Java通过Java Database Connectivity (JDBC) API来与数据库进行交互,包括连接、查询、插入、更新和删除数据。 4. **...

    毕业设计论文-IT计算机-酒店订单管理系统(Jsp+servlet+mysql)-源码.zip

    本系统采用JSP作为前端展示,Servlet作为后台处理逻辑,MySQL作为数据存储,构建了一个完整的三层架构系统。以下是关于这个系统的详细知识点: 1. **JSP(JavaServer Pages)**:JSP是一种动态网页技术,允许开发者...

    芝麻开门博客网javaweb最新源码.zip

    【标题】"芝麻开门博客网javaweb最新源码.zip" 涉及的主要知识点是JavaWeb开发,这是一个基于Java技术构建的博客网站的源代码集合。JavaWeb是一种用于开发动态网页和网络应用的技术,它结合了Java语言、Servlet、JSP...

    毕业设计论文-IT计算机-网上书店(struts+hibernate+css+mysql)-源码.zip

    在这个网上书店系统中,MySQL存储了所有业务相关的数据,例如书籍信息、用户账户、订单详情等。开发者需要设计合理的数据库表结构,并使用SQL语句进行数据的查询、插入、更新和删除操作。 在项目实施过程中,开发者...

    芝麻开门博客网java源代码

    - 由于未提供具体的技术细节,我们可以推测项目可能使用了如MySQL作为数据库,Thymeleaf或JSP作为视图层技术,Spring Data用于数据库操作,Hibernate或MyBatis作为ORM(对象关系映射)工具,还有可能使用了...

    php+mysql简易口罩限量领取系统 v1.0.zip

    而MySQL则是一款关系型数据库管理系统,用于存储和管理数据,是Web应用的重要组成部分。 在这个系统中,PHP负责处理用户的请求,如用户登录、领取口罩等操作,通过HTTP协议与客户端进行交互。PHP代码将这些请求转化...

    毕业设计论文-IT计算机-[新闻文章]eNews新闻发布系统v1.0_enewsv1.0mysql-源码.zip

    eNews系统中的数据存储、查询和事务处理都基于MySQL。 6. **RESTful API**:为了实现前后端分离,系统可能会使用RESTful API设计原则,提供一组HTTP方法来处理资源,如GET用于获取数据,POST用于创建新数据,PUT...

    网络爬虫-多进程爬取在线课程并存入MySQL数据库-Python源码示例.zip

    该压缩包文件“网络爬虫-多进程爬取在线课程并存入MySQL数据库-Python源码示例.zip”提供了一个Python实现的网络爬虫项目,旨在通过多进程技术抓取在线课程信息,并将数据存储到MySQL数据库中。这个项目涵盖了以下几...

    芝麻开门博客网.rar

    数据库管理方面,项目可能采用了MySQL作为关系型数据库,存储用户信息、博客文章以及评论等数据。开发者可能使用JDBC或MyBatis这样的持久层框架来与数据库交互,简化SQL操作,提高开发效率。ORM(对象关系映射)技术...

    芝麻开门博客网.zip-Java源码项目

    4. **数据库设计**:项目可能使用了MySQL或类似的数据库管理系统,存储用户信息、博客文章、评论等数据。数据库设计包括表结构的规划和关系建模,如用户表、文章表、评论表等。 5. **Spring框架**:除了Spring MVC...

    Java Web项目-芝麻开门博客网.zip

    在这个项目中,很可能使用了MySQL或者Oracle等关系型数据库存储用户信息、文章内容、评论等数据。JDBC(Java Database Connectivity)作为Java与数据库交互的标准接口,被用于执行SQL语句,进行数据的增删改查操作。...

Global site tag (gtag.js) - Google Analytics