{ "cells": [ { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "ename": "ValueError", "evalue": "Length mismatch: Expected axis has 50 elements, new values have 40 elements", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 24\u001b[0m \u001b[0mfolder_path\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34mr'C:\\Users\\admin\\Desktop\\工作簿1'\u001b[0m \u001b[1;31m# 替换为你的文件夹路径\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 25\u001b[0m \u001b[0moutput_file\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34mr'C:\\Users\\admin\\Desktop\\工作簿11111.xlsx'\u001b[0m \u001b[1;31m# 输出文件名\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 26\u001b[1;33m \u001b[0mmerge_excel_files\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfolder_path\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moutput_file\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[1;32m\u001b[0m in \u001b[0;36mmerge_excel_files\u001b[1;34m(folder_path, output_file)\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[0mtemp_df\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread_excel\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfile_path\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 16\u001b[0m \u001b[1;31m# 填充列名\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 17\u001b[1;33m \u001b[0mtemp_df\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcolumns\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 18\u001b[0m \u001b[0mdf\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmerge\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtemp_df\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mhow\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'outer'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mon\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mlist\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 19\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pandas\\core\\generic.py\u001b[0m in \u001b[0;36m__setattr__\u001b[1;34m(self, name, value)\u001b[0m\n\u001b[0;32m 6000\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6001\u001b[0m \u001b[0mobject\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mname\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 6002\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__setattr__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mname\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mvalue\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 6003\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[0mAttributeError\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6004\u001b[0m \u001b[1;32mpass\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pandas\\_libs\\properties.pyx\u001b[0m in \u001b[0;36mpandas._libs.properties.AxisProperty.__set__\u001b[1;34m()\u001b[0m\n", "\u001b[1;32mc:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pandas\\core\\generic.py\u001b[0m in \u001b[0;36m_set_axis\u001b[1;34m(self, axis, labels)\u001b[0m\n\u001b[0;32m 728\u001b[0m \"\"\"\n\u001b[0;32m 729\u001b[0m \u001b[0mlabels\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mensure_index\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlabels\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 730\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_mgr\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mset_axis\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0maxis\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlabels\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 731\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_clear_item_cache\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 732\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pandas\\core\\internals\\managers.py\u001b[0m in \u001b[0;36mset_axis\u001b[1;34m(self, axis, new_labels)\u001b[0m\n\u001b[0;32m 223\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mset_axis\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m:\u001b[0m \u001b[0mAxisInt\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnew_labels\u001b[0m\u001b[1;33m:\u001b[0m \u001b[0mIndex\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m->\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 224\u001b[0m \u001b[1;31m# Caller is responsible for ensuring we have an Index object.\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 225\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_validate_set_axis\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0maxis\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnew_labels\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 226\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0maxes\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0maxis\u001b[0m\u001b[1;33m]\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnew_labels\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 227\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pandas\\core\\internals\\base.py\u001b[0m in \u001b[0;36m_validate_set_axis\u001b[1;34m(self, axis, new_labels)\u001b[0m\n\u001b[0;32m 68\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 69\u001b[0m \u001b[1;32melif\u001b[0m \u001b[0mnew_len\u001b[0m \u001b[1;33m!=\u001b[0m \u001b[0mold_len\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 70\u001b[1;33m raise ValueError(\n\u001b[0m\u001b[0;32m 71\u001b[0m \u001b[1;34mf\"Length mismatch: Expected axis has {old_len} elements, new \"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 72\u001b[0m \u001b[1;34mf\"values have {new_len} elements\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: Length mismatch: Expected axis has 50 elements, new values have 40 elements" ] } ], "source": [ "import os\n", "import pandas as pd\n", "\n", "def merge_excel_files(folder_path, output_file):\n", " # 获取文件夹中所有的xls文件\n", " files = [f for f in os.listdir(folder_path) if f.endswith('.xls')]\n", "\n", " # 读取第一个文件,作为基础数据框\n", " first_file = os.path.join(folder_path, files[0])\n", " df = pd.read_excel(first_file)\n", "\n", " # 遍历剩余的文件,并将它们的数据框合并到基础数据框中\n", " for file in files[1:]:\n", " file_path = os.path.join(folder_path, file)\n", " temp_df = pd.read_excel(file_path)\n", " # 填充列名\n", " temp_df.columns = df.columns\n", " df = df.merge(temp_df, how='outer', on=list(df.columns))\n", "\n", " # 将合并后的数据框写入到一个新的Excel文件中\n", " df.to_excel(output_file, index=False)\n", "\n", "# 使用示例\n", "folder_path = r'C:\\Users\\admin\\Desktop\\工作簿1' # 替换为你的文件夹路径\n", "output_file = r'C:\\Users\\admin\\Desktop\\工作簿11111.xlsx' # 输出文件名\n", "merge_excel_files(folder_path, output_file)\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ ":44: UserWarning: Pandas requires version '1.4.3' or newer of 'xlsxwriter' (version '1.3.8' currently installed).\n", " result.to_excel(r'C:\\Users\\admin\\Desktop\\工作簿22222.xlsx', index=False)\n" ] } ], "source": [ "import os\n", "import pandas as pd\n", "\n", "def merge_excel_files(folder_path):\n", " # 获取文件夹中的所有文件\n", " files = os.listdir(folder_path)\n", " \n", " # 筛选出所有的Excel文件\n", " excel_files = [file for file in files if file.endswith('.xlsx') or file.endswith('.xls')]\n", " \n", " # 初始化一个空的DataFrame用于存储合并后的数据\n", " merged_data = pd.DataFrame()\n", " \n", " # 遍历所有Excel文件\n", " for file in excel_files:\n", " file_path = os.path.join(folder_path, file)\n", " \n", " # 读取Excel文件\n", " data = pd.read_excel(file_path)\n", " \n", " # 如果合并后的DataFrame为空,则直接将当前数据赋值给它\n", " if merged_data.empty:\n", " merged_data = data\n", " else:\n", " # 合并数据,保留所有列,如果有重复列名,则在合并时添加后缀以避免冲突\n", " common_columns = set(merged_data.columns).intersection(data.columns)\n", " for col in common_columns:\n", " data.rename(columns={col: col + '_1'}, inplace=True)\n", " merged_data.rename(columns={col: col + '_2'}, inplace=True)\n", " \n", " # 将两个数据集合并在一起\n", " merged_data = pd.concat([merged_data, data], axis=1)\n", " \n", " # 重置索引\n", " merged_data.reset_index(drop=True, inplace=True)\n", " \n", " return merged_data\n", "\n", "# 调用函数,传入包含Excel文件的文件夹路径\n", "folder_path = r'C:\\Users\\admin\\Desktop\\工作簿2' \n", "result = merge_excel_files(folder_path)\n", "\n", "# 保存合并后的数据到新的Excel文件\n", "result.to_excel(r'C:\\Users\\admin\\Desktop\\工作簿22222.xlsx', index=False)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\_distributor_init.py:30: UserWarning: loaded more than 1 DLL from .libs:\n", "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas.EL2C6PLE4ZYW3ECEVIV3OXXGRN2NRFM2.gfortran-win_amd64.dll\n", "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas64__v0.3.21-gcc_10_3_0.dll\n", " warnings.warn(\"loaded more than 1 DLL from .libs:\"\n", ":25: UserWarning: Pandas requires version '1.4.3' or newer of 'xlsxwriter' (version '1.3.8' currently installed).\n", " merged_data.to_excel(output_file, index=False)\n" ] } ], "source": [ "import os\n", "import pandas as pd\n", "\n", "def merge_excel_files(folder_path, output_file):\n", " # 获取文件夹中的所有Excel文件\n", " excel_files = [f for f in os.listdir(folder_path) if f.endswith('.xlsx') or f.endswith('.xls')]\n", "\n", " # 初始化一个空的DataFrame用于存储合并后的数据\n", " merged_data = pd.DataFrame()\n", "\n", " # 遍历所有Excel文件\n", " for file in excel_files:\n", " file_path = os.path.join(folder_path, file)\n", " # 读取Excel文件内容\n", " data = pd.read_excel(file_path)\n", "\n", " # 如果merged_data为空,则直接将当前数据赋值给merged_data\n", " if merged_data.empty:\n", " merged_data = data\n", " else:\n", " # 合并两个表格,对于列名相同的,合并到一列\n", " merged_data = pd.concat([merged_data, data], axis=0, ignore_index=True)\n", "\n", " # 将合并后的数据写入新的Excel文件\n", " merged_data.to_excel(output_file, index=False)\n", "\n", "# 使用示例\n", "folder_path = r'C:\\Users\\admin\\Desktop\\江苏中标信息\\附表拆分' \n", "output_file = r'C:\\Users\\admin\\Desktop\\附件汇总-0902.xlsx' # 输出文件名\n", "merge_excel_files(folder_path, output_file)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Note: you may need to restart the kernel to use updated packages.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Traceback (most recent call last):\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\runpy.py\", line 197, in _run_module_as_main\n", " return _run_code(code, main_globals, None,\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\runpy.py\", line 87, in _run_code\n", " exec(code, run_globals)\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\__main__.py\", line 21, in \n", " from pip._internal.cli.main import main as _main\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\cli\\main.py\", line 8, in \n", " from pip._internal.cli.autocompletion import autocomplete\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\cli\\autocompletion.py\", line 9, in \n", " from pip._internal.cli.main_parser import create_main_parser\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\cli\\main_parser.py\", line 7, in \n", " from pip._internal.cli import cmdoptions\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\cli\\cmdoptions.py\", line 22, in \n", " from pip._internal.cli.progress_bars import BAR_TYPES\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\cli\\progress_bars.py\", line 9, in \n", " from pip._internal.utils.logging import get_indentation\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\utils\\logging.py\", line 14, in \n", " from pip._internal.utils.misc import ensure_dir\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\utils\\misc.py\", line 29, in \n", " from pip._internal.locations import get_major_minor_version, site_packages, user_site\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\locations\\__init__.py\", line 14, in \n", " from . import _sysconfig\n", " File \"c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\locations\\_sysconfig.py\", line 7, in \n", " from pip._internal.exceptions import InvalidSchemeCombination, UserInstallationInvalid\n", "ImportError: cannot import name 'InvalidSchemeCombination' from 'pip._internal.exceptions' (c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\pip\\_internal\\exceptions.py)\n" ] } ], "source": [ "pip install openpyxl" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\_distributor_init.py:30: UserWarning: loaded more than 1 DLL from .libs:\n", "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas.EL2C6PLE4ZYW3ECEVIV3OXXGRN2NRFM2.gfortran-win_amd64.dll\n", "c:\\Users\\admin\\.conda\\envs\\F6processing\\lib\\site-packages\\numpy\\.libs\\libopenblas64__v0.3.21-gcc_10_3_0.dll\n", " warnings.warn(\"loaded more than 1 DLL from .libs:\"\n" ] }, { "data": { "text/plain": [ "{'version': '5.1.6-r1@1f8eeb2#8e663c5',\n", " 'code': 0,\n", " 'msg': 'success',\n", " 'data': {'id': 271710,\n", " 'datasetId': 1,\n", " 'fieldName': 'c1',\n", " 'appId': 1142,\n", " 'createdBy': 144,\n", " 'createdAt': '2024-09-05 09:40:44',\n", " 'updatedBy': 144,\n", " 'updatedAt': '2024-09-05 09:40:44',\n", " 'isMetric': False,\n", " 'originType': 'integer',\n", " 'label': '测试2',\n", " 'type': 'number',\n", " 'config': {'dialectName': 'MysqlDialect'},\n", " 'visible': True,\n", " 'nativeType': 'BIGINT',\n", " 'hideValue': False,\n", " 'formula': '-5327531844512980082',\n", " 'expr': {'kind': 'formula',\n", " 'op': '-5327531844512980082',\n", " 'type': 'number',\n", " 'value': '222222222222222222222222222222222222'},\n", " 'detectedType': 'integer',\n", " 'suggestedTypes': ['number', 'string', 'date'],\n", " 'defaultAggrType': 'sum',\n", " 'basicType': 'number'},\n", " 'chartDataStartTimeMillis': 0}" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "import requests\n", "from pprint import pprint\n", "cookies_str = 'gr_user_id=7c87d03e-506e-4da1-88a9-cdb29122c33f; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2210979894419862155492%22%2C%22first_id%22%3A%221750b696378f-0c7f49ca6d76a6-3d634f03-1327104-1750b6963799e7%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E5%BC%95%E8%8D%90%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC%22%2C%22%24latest_referrer%22%3A%22https%3A%2F%2Fyunxiu.f6car.cn%2F%22%7D%2C%22%24device_id%22%3A%221750b696378f-0c7f49ca6d76a6-3d634f03-1327104-1750b6963799e7%22%7D; sid=e1371e36-dfcd-4574-b565-f555490a417e; csrf=1c2cf922-8784-4d67-bfc6-bf9e4a2ca019; _USER_SESSION_ID=23cbc128-2d76-4acc-8d5d-02d956200f32; pac4jCsrfToken=c7e538c4ac3f442c87433d58f7ce9968'\n", "\n", "cookies_str = cookies_str.encode('utf-8').decode('latin-1')\n", "\n", "cookie_dict = {item.split('=')[0]: item.split('=')[1]\n", " for item in cookies_str.split('; ')}\n", "\n", "headers = {\n", " 'accept':'application/json',\n", " 'accept-encoding':'gzip, deflate, br, zstd',\n", " 'accept-language':'zh-CN',\n", " 'content-length':'498',\n", " 'content-type':'application/json',\n", " 'cookie':'gr_user_id=7c87d03e-506e-4da1-88a9-cdb29122c33f; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2210979894419862155492%22%2C%22first_id%22%3A%221750b696378f-0c7f49ca6d76a6-3d634f03-1327104-1750b6963799e7%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E5%BC%95%E8%8D%90%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC%22%2C%22%24latest_referrer%22%3A%22https%3A%2F%2Fyunxiu.f6car.cn%2F%22%7D%2C%22%24device_id%22%3A%221750b696378f-0c7f49ca6d76a6-3d634f03-1327104-1750b6963799e7%22%7D; sid=e1371e36-dfcd-4574-b565-f555490a417e; csrf=1c2cf922-8784-4d67-bfc6-bf9e4a2ca019; _USER_SESSION_ID=23cbc128-2d76-4acc-8d5d-02d956200f32; pac4jCsrfToken=c7e538c4ac3f442c87433d58f7ce9968',\n", " 'origin':'https://insight.f6car.com',\n", " 'priority':'u=1, i',\n", " 'referer':'https://insight.f6car.com/datamart/1142/dataset/1/fields',\n", " 'sec-ch-ua':'\"Chromium\";v=\"128\", \"Not;A=Brand\";v=\"24\", \"Google Chrome\";v=\"128\"',\n", " 'sec-ch-ua-mobile':'?0',\n", " 'sec-ch-ua-platform':'\"Windows\"',\n", " 'sec-fetch-dest':'empty',\n", " 'sec-fetch-mode':'cors',\n", " 'sec-fetch-site':'same-origin',\n", " 'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',\n", " 'x-csrf-token':'1c2cf922-8784-4d67-bfc6-bf9e4a2ca019',\n", " 'x-request-domain':'https://insight.f6car.com',\n", " 'x-request-hash-url':'https://insight.f6car.com/datamart/1142/dataset/1/fields',\n", " 'x-request-proxy':'http://localhost:3003'\n", "\n", "}\n", "\n", "json1={\n", " \"options\": {\n", " \"label\": \"测试2\",\n", " \"visible\": 'true',\n", " \"expr\": {\n", " \"kind\": \"formula\",\n", " \"op\": \"222222222222222222222222222222222222\",\n", " \"value\": \"222222222222222222222222222222222222\"\n", " }\n", " }\n", "}\n", "# request_id = generate_request_id()\n", "url = 'https://insight.f6car.com/api/apps/1142/datasets/1/fields?01J6ZWYWDSXH08K0Q7C85JPA9K'\n", "res = requests.post(url,cookies=cookie_dict,headers=headers,json=json1)\n", "strele = res.json()\n", "strele" ] } ], "metadata": { "kernelspec": { "display_name": "F6processing", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.4" } }, "nbformat": 4, "nbformat_minor": 2 }