雪是一种能够令人产生多种情绪的东西,当窗外那像柳絮、像芦花般的雪花,正在纷纷扬扬地从天而降的时候,当大地被雪花装饰得像铺上白色的地毯一样的时候,站在窗户边上,望着它们。
本文实例讲述了MySQL无法存储emoji表情解决方案。分享给大家供大家参考,具体如下:
今天学习爬虫爬伯乐在线的文章,由于在文章中有emoji表情,导致有emoji表情的文章都爬取不下来
经过一番搜索之后终于解决了问题。
相关文章可参考:
①. MySQL无法存储Emoji表情问题
②. mysql存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无法存储emoji表情如何解决方案分析就介绍到这了。没有输过的人,赢不久。更多相关MySQL无法存储emoji表情如何解决方案分析内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!