MySQL无法存储emoji表情方案
2024-08-27 12:16:43
今天学习爬虫爬伯乐在线的文章,由于在文章中有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()
最新文章
- nodejs项目mysql使用sequelize支持存储emoji
- 一个年轻的码农的一个C#项目
- Nodejs 高并发长链接TCP链接的服务器设计问题
- Flash AS实现时钟效果(全脚本实现)
- 自然语言18_Named-entity recognition
- c# 文件简繁体转换
- Netty4.x分析(转)
- JS实现网页下载[转]
- Linux下的绘图(流程图、UML、mindmap)工具
- 理解Python中的装饰器
- 将[4,3,2,5,4,3]分割成[4,3,2]、[5,4,3]两个List的算法
- Asp.Net Core 2.0 项目实战(11) 基于OnActionExecuting全局过滤器,页面操作权限过滤控制到按钮级
- 看见的力量 – (II) 影响地图
- 找不到servlet对应的class
- C#中为什么会出现空静态构造方法的写法
- js分析 天_眼_查 字体文件
- python之路--面向对象-成员
- 以太坊、Hyperledger Fabric和Corda,哪个更好?
- Python笔记 【无序】 【一】
- fetch get方法的时候报错
热门文章
- C语言实现万年历
- (三十六)利用AFNetworking进行JSON数据解析
- ORACLE里锁有以下几种模式,v$locked_object,locked_mode
- python3爬虫 - cookie登录实战
- wing带你玩转自定义view系列(3)模仿微信下拉眼睛
- 谈谈java中的线程(初级概念)
- Gradle 1.12用户指南翻译——第二十二章. 标准的 Gradle 插件
- libRTMP使用说明
- Vim编译器的常用使用方法与技巧
- LeetCode之“动态规划”:Maximal Square &;&; Largest Rectangle in Histogram &;&; Maximal Rectangle