服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|

MySQL无法存储emoji表情解决方案分析

2019-07-01 10:34站在两个世界的边缘 Mysql

这篇文章主要介绍了MySQL无法存储emoji表情解决方案,结合实例形式分析了Python爬虫爬取文章中emoji表情存入数据库的实现方法,涉及mysql utf8mb4编码的修改相关操作技巧,需要的朋友可以参考下

本文实例讲述了MySQL无法存储emoji表情解决方案。分享给大家供大家参考,具体如下:

今天学习爬虫爬伯乐在线的文章,由于在文章中有emoji表情,导致有emoji表情的文章都爬取不下来

经过一番搜索之后终于解决了问题。

1. 在navicat中

如果在新建表之前就改变数据库的编码,建表的时候好像可以自己转变过来吧

查看字符集编码:

show variables like '%char%';

更改数据库编码:

ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

更改表编码:

ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

下面这些,好像没用到,要是不行也可以用用

set @@character_set_client='utf8mb4';
set @@character_set_connection='utf8mb4';
set @@character_set_results='utf8mb4';
set @@character_set_server='utf8mb4';

2. 在爬虫代码中

class MysqlPipeline(object):
  def __init__(self):
    self.conn = MySQLdb.connect('127.0.0.1', 'root', 'root', 'article_spider', charset='utf8mb4', use_unicode=True)
    self.cursor = self.conn.cursor()
  def process_item(self, item, spider):
    insert_sql = '''
      insert into article(title,url,bookmark_nums,url_object_id,content)
      VALUE (%s,%s,%s,%s,%s)
    '''
    self.cursor.execute(insert_sql, (item['title'], item['url'], item['bookmark_nums'],item['url_object_id'], item['content']))
    self.conn.commit()

希望本文所述对大家MySQL数据库计有所帮助。

延伸 · 阅读

精彩推荐
  • Mysql关于JDBC与MySQL临时表空间的深入解析

    关于JDBC与MySQL临时表空间的深入解析

    这篇文章主要给大家介绍了关于JDBC与MySQL临时表空间的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...

    爱可生云数据库1822019-06-26
  • Mysqlmysql蠕虫复制基础知识点

    mysql蠕虫复制基础知识点

    在本篇内容中我们给大家分享了关于mysql蠕虫复制基础知识点,对此有需要的朋友们跟着学习下吧。...

    laozhang3822019-06-07
  • MysqlMysql优化策略(推荐)

    Mysql优化策略(推荐)

    这篇文章主要介绍了Mysql优化策略,文中介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...

    sirb2262019-06-25
  • Mysqlmysql修改数据库默认路径无法启动问题的解决

    mysql修改数据库默认路径无法启动问题的解决

    这篇文章主要给大家介绍了关于mysql修改数据库默认路径无法启动问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...

    hellyhe1232019-06-18
  • MysqlMySQL表结构变更你不可不知的Metadata Lock详解

    MySQL表结构变更你不可不知的Metadata Lock详解

    这篇文章主要给大家介绍了关于MySQL表结构变更你不可不知的Metadata Lock的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...

    iVictor4432019-06-29
  • MysqlMySQL slow_log表无法修改成innodb引擎详解

    MySQL slow_log表无法修改成innodb引擎详解

    这篇文章主要给大家介绍了关于MySQL slow_log表无法修改成innodb引擎的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...

    Jia-Xin1562019-06-25
  • Mysql基于MySQL数据库的数据约束实例及五种完整性约束介绍

    基于MySQL数据库的数据约束实例及五种完整性约束介绍

    今天小编就为大家分享一篇关于基于MySQL数据库的数据约束实例及五种完整性约束介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧...

    李西召4592019-06-11
  • Mysql详解MySQL执行原理、逻辑分层、更改数据库处理引擎

    详解MySQL执行原理、逻辑分层、更改数据库处理引擎

    在本文里我们给大家总结了关于MySQL执行原理、逻辑分层、更改数据库处理引擎的相关知识点,需要的读者们一起学习下。...

    脚本之家2082019-06-04