import\u0020pymysql\nimport\u0020pandas\u0020as\u0020pd\n\n\ndef\u0020txt_to_mysql(txt_file, host, port, user, password, database, table):\n\u0020\u0020#\u0020读取txt文件内容\n\u0020\u0020with\u0020open(txt_file, 'r')\u0020as\u0020file:\n\u0020\u0020\u0020\u0020data\u0020=\u0020file.read()\n\n\u0020\u0020#\u0020连接数据库\n\u0020\u0020conn\u0020=\u0020pymysql.connect(host=host, port=port, user=user, password=password, database=database)\n\u0020\u0020cursor\u0020=\u0020conn.cursor()\n\n\u0020\u0020#\u0020创建表\n\u0020\u0020cursor.execute(f"CREATE\u0020TABLE\u0020IF\u0020NOT\u0020EXISTS\u0020{table}\u0020(content\u0020TEXT)")\n\n\u0020\u0020#\u0020插入数据\n\u0020\u0020cursor.execute(f"INSERT\u0020INTO\u0020{table}\u0020(content)\u0020VALUES\u0020('{data}')")\n\n\u0020\u0020#\u0020提交并关闭连接\n\u0020\u0020conn.commit()\n\u0020\u0020cursor.close()\n\u0020\u0020conn.close()\n\n\ndef\u0020csv_to_mysql(csv_file, host, port, user, password, database, table):\n\u0020\u0020#\u0020读取csv文件内容\n\u0020\u0020data\u0020=\u0020pd.read_csv(csv_file)\n\n\u0020\u0020#\u0020连接数据库\n\u0020\u0020conn\u0020=\u0020pymysql.connect(host=host, port=port, user=user, password=password, database=database)\n\u0020\u0020cursor\u0020=\u0020conn.cursor()\n\n\u0020\u0020#\u0020创建表\n\u0020\u0020columns\u0020=\u0020','.join(data.columns)\n\u0020\u0020cursor.execute(f"CREATE\u0020TABLE\u0020IF\u0020NOT\u0020EXISTS\u0020{table}\u0020({columns})")\n\n\u0020\u0020#\u0020插入数据\n\u0020\u0020for\u0020_,\u0020row\u0020in\u0020data.iterrows():\n\u0020\u0020\u0020\u0020values\u0020=\u0020','.join([f"'{value}'" for\u0020value\u0020in\u0020row])\n\u0020\u0020\u0020\u0020cursor.execute(f"INSERT\u0020INTO\u0020{table}\u0020({columns})\u0020VALUES\u0020({values})")\n\n\u0020\u0020#\u0020提交并关闭连接\n\u0020\u0020conn.commit()\n\u0020\u0020cursor.close()\n\u0020\u0020conn.close()\n\n\ndef\u0020excel_to_mysql(excel_file, host, port, user, password, database, table):\n\u0020\u0020#\u0020读取excel文件内容\n\u0020\u0020data\u0020=\u0020pd.read_excel(excel_file)\n\n\u0020\u0020#\u0020连接数据库\n\u0020\u0020conn\u0020=\u0020pymysql.connect(host=host, port=port, user=user, password=password, database=database)\n\u0020\u0020cursor\u0020=\u0020conn.cursor()\n\n\u0020\u0020#\u0020创建表\n\u0020\u0020columns\u0020=\u0020','.join(data.columns)\n\u0020\u0020cursor.execute(f"CREATE\u0020TABLE\u0020IF\u0020NOT\u0020EXISTS\u0020{table}\u0020({columns})")\n\n\u0020\u0020#\u0020插入数据\n\u0020\u0020for\u0020_,\u0020row\u0020in\u0020data.iterrows():\n\u0020\u0020\u0020\u0020values\u0020=\u0020','.join([f"'{value}'" for\u0020value\u0020in\u0020row])\n\u0020\u0020\u0020\u0020cursor.execute(f"INSERT\u0020INTO\u0020{table}\u0020({columns})\u0020VALUES\u0020({values})")\n\n\u0020\u0020#\u0020提交并关闭连接\n\u0020\u0020conn.commit()\n\u0020\u0020cursor.close()\n\u0020\u0020conn.close()\n\n\ndef\u0020main():\n\u0020\u0020file_type\u0020=\u0020input("请选择文件类型(1-txt,2-csv,3-excel):")\n\u0020\u0020txt_file\u0020=\u0020"suesnews_result.txt"\n\u0020\u0020csv_file\u0020=\u0020"当当搜索关键词_单页面.csv"\n\u0020\u0020excel_file\u0020=\u0020"当当搜索关键词_多页面.csv"\n\u0020\u0020host\u0020=\u0020input("请输入数据库主机名:")\n\u0020\u0020port\u0020=\u0020input("请输入数据库端口号:")\n\u0020\u0020user\u0020=\u0020input("请输入数据库用户名:")\n\u0020\u0020password\u0020=\u0020input("请输入数据库密码:")\n\u0020\u0020database\u0020=\u0020input("请输入数据库名:")\n\u0020\u0020table\u0020=\u0020input("请输入数据表名:")\n\n\u0020\u0020if\u0020file_type\u0020==\u0020"1":\n\u0020\u0020\u0020\u0020txt_to_mysql(txt_file, host, port, user, password, database, table)\n\u0020\u0020elif\u0020file_type\u0020==\u0020"2":\n\u0020\u0020\u0020\u0020csv_to_mysql(csv_file, host, port, user, password, database, table)\n\u0020\u0020elif\u0020file_type\u0020==\u0020"3":\n\u0020\u0020\u0020\u0020excel_to_mysql(excel_file, host, port, user, password, database, table)\n\u0020\u0020else:\n\u0020\u0020\u0020\u0020print("文件类型选择错误!")\n\n\n\nif\u0020__name__\u0020==\u0020"main":\n\u0020\u0020main()

Python 将 txt, csv, excel 文件导入 MySQL 数据库

原文地址: http://www.cveoy.top/t/topic/puz2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录