• 售前

  • 售后

热门帖子
入门百科

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

[复制链接]
海田1 显示全部楼层 发表于 2021-10-26 13:27:32 |阅读模式 打印 上一主题 下一主题
本文实例陈诉了MySQL无法存储emoji心情解决方案。分享给各人供各人参考,具体如下:
本日学习爬虫爬伯乐在线的文章,由于在文章中有emoji心情,导致有emoji心情的文章都爬取不下来
经过一番搜索之后终于解决了标题。
相干文章可参考:
①. MySQL无法存储Emoji心情标题
②. mysql存emoji心情报错处置惩罚
1. 在navicat中
如果在新建表之前就改变数据库的编码,建表的时间好像可以本身转变过来吧
查看字符集编码:
  1. show variables like '%char%';
复制代码
更改数据库编码:
  1. ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
复制代码
更改表编码:
  1. ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
复制代码
下面这些,好像没用到,要是不可也可以用用
  1. set @@character_set_client='utf8mb4';
  2. set @@character_set_connection='utf8mb4';
  3. set @@character_set_results='utf8mb4';
  4. set @@character_set_server='utf8mb4';
复制代码
2. 在爬虫代码中
  1. class MysqlPipeline(object):
  2.   def __init__(self):
  3.     self.conn = MySQLdb.connect('127.0.0.1', 'root', 'root', 'article_spider', charset='utf8mb4', use_unicode=True)
  4.     self.cursor = self.conn.cursor()
  5.   def process_item(self, item, spider):
  6.     insert_sql = '''
  7.       insert into article(title,url,bookmark_nums,url_object_id,content)
  8.       VALUE (%s,%s,%s,%s,%s)
  9.     '''
  10.     self.cursor.execute(insert_sql, (item['title'], item['url'], item['bookmark_nums'],item['url_object_id'], item['content']))
  11.     self.conn.commit()
复制代码
更多关于MySQL相干内容感爱好的读者可查看本站专题:《MySQL存储过程技巧大全》、《MySQL常用函数大汇总》、《MySQL日记操作技巧大全》、《MySQL变乱操作技巧汇总》及《MySQL数据库锁相干技巧汇总》
渴望本文所述对各人MySQL数据库计有所资助。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作