1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- import mysql.connector
- from mysql.connector import Error
- import json
- MYSQL_CONFIG = {
- 'host': 'rm-bp19uc56sud25ag4o.mysql.rds.aliyuncs.com',
- 'database': 'longvideo',
- 'port': 3306,
- 'user': 'wx2016_longvideo',
- 'password': 'wx2016_longvideoP@assword1234',
- }
- def insert_content(gpt_res):
- """ 连接MySQL数据库并插入一行数据 """
- try:
- # 连接MySQL数据库
- conn = mysql.connector.connect(
- host=MYSQL_CONFIG['host'],
- database=MYSQL_CONFIG['database'],
- user=MYSQL_CONFIG['user'],
- password=MYSQL_CONFIG['password'],
- )
- if conn.is_connected():
- print('成功连接到数据库')
- cursor = conn.cursor()
- # 插入数据的SQL语句
- insert_query = """
- INSERT INTO video_content(video_id,key_words,search_keys,extra_keys,category_list,tone,target_audience,target_age,target_gender,address,theme)
- VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
- """
- # 准备要插入的数据,转换字典列表为元组列表
- data_to_insert = [
- (
- gpt_res.get('video_id', ''),
- json.dumps(gpt_res.get('key_words', ''),
- sort_keys=True, ensure_ascii=False),
- json.dumps(gpt_res.get('search_keys', ''),
- sort_keys=True, ensure_ascii=False),
- json.dumps(gpt_res.get('extra_keys', ''),
- sort_keys=True, ensure_ascii=False),
- json.dumps(gpt_res.get('category', ''),
- sort_keys=True, ensure_ascii=False),
- str(gpt_res.get('tone', '')),
- str(gpt_res.get('target_audience', '')),
- str(gpt_res.get('target_age', '')),
- str(gpt_res.get('target_gender', '')),
- str(gpt_res.get('address', '')),
- str(gpt_res.get('theme', ''))
- )
- ]
- # 执行批量插入操作
- cursor.executemany(insert_query, data_to_insert)
- print('数据插入成功')
- # 提交事务
- conn.commit()
- except Error as e:
- print('数据库连接或操作出错:', e)
- finally:
- if conn.is_connected():
- cursor.close()
- conn.close()
- print('数据库连接已关闭')
- # 执行函数
- # connect_insert()
|