Export a pandas dataframe to a online spreadsheet.
Project description
Export a pandas dataframe to an online spreadsheet
The online spreadsheet such as Google Sheets, Feishu Docs, is a good way to share data with others and is a powerful tool for data analysis and visualization. This package provides a simple way to export a pandas dataframe to a online spreadsheet.
Installation
You can install this package from PyPI using pip:
pip install dataframe-to-online-spreadsheet
Usage
Feishu Docs
- You need to register a Feishu team and get the manager_ids from Feishu Admin. Fortunately, it is free for a small team.
- You need to create an app and get the app_id and app_secret from Feishu Open Platform.
import pandas as pd
import dataframe_to_online_spreadsheet.feishu
import os
def test_feishu():
app_id = os.getenv("APP_ID")
app_secret = os.getenv("APP_SECRET")
sheet1_data = pd.read_csv("./tests/test_data1.csv")
token = sheet1_data.feishu.to_spreadsheet(app_id, app_secret, title="Daily Report", data={'title': 'sheet_name1', 'data': sheet1_data}, manager_ids=['xxx'])
sheet2_data = pd.read_csv("./tests/test_data2.csv")
token = sheet2_data.feishu.to_spreadsheet(app_id, app_secret, title="Daily Report", data={'title': 'sheet_name2', 'data': sheet2_data}, manager_ids=['xxx'], spreadsheet_token=token)
sheet3_data = pd.read_csv("./tests/test_data3.csv")
token = sheet3_data.feishu.to_spreadsheet(app_id, app_secret, title="Daily Report", data={'title': 'sheet_name3', 'data': sheet3_data}, manager_ids=['xxx'], spreadsheet_token=token)
logging.info(f"spreadsheet token: {token}")
assert token
Wecom Docs
- You need login Wecom Developer.
- You need to create an app and get the app_id and app_secret.
- Create a smartsheet and get the doc_id and sheet_id.
import pandas as pd
import dataframe_to_online_spreadsheet.wecom
import os
def test_wecom():
app_id = os.getenv("APP_ID")
app_secret = os.getenv("APP_SECRET")
doc_id = os.getenv("DOC_ID")
sheet_id = os.getenv("SHEET_ID")
sheet1_data = pd.read_csv("./tests/test_data1_wecom.csv")
fields_ids = {
"f3jXlv": "FIELD_TYPE_NUMBER",
"f8BRn6": "FIELD_TYPE_TEXT",
"fBgV4J": "FIELD_TYPE_TEXT",
"fD1c0G": "FIELD_TYPE_TEXT",
"fGJwzi": "FIELD_TYPE_TEXT",
"fMtBZy": "FIELD_TYPE_TEXT",
"fQONOH": "FIELD_TYPE_TEXT",
"fQQyQY": "FIELD_TYPE_DATE_TIME",
"fRq1I2": "FIELD_TYPE_DATE_TIME",
"fSmqgA": "FIELD_TYPE_TEXT",
"fSu8nr": "FIELD_TYPE_NUMBER",
"fWY1jO": "FIELD_TYPE_TEXT",
"fYrjfz": "FIELD_TYPE_NUMBER",
"fZH5aH": "FIELD_TYPE_TEXT",
"fZZ5uE": "FIELD_TYPE_NUMBER",
"fZilZm": "FIELD_TYPE_TEXT",
"faGRO9": "FIELD_TYPE_TEXT",
"fcIPid": "FIELD_TYPE_TEXT",
"ffPlXC": "FIELD_TYPE_NUMBER",
"fgxTYC": "FIELD_TYPE_TEXT",
"fpqHBM": "FIELD_TYPE_NUMBER",
"fwLOij": "FIELD_TYPE_TEXT",
"fxRfyy": "FIELD_TYPE_NUMBER",
"fzNsma": "FIELD_TYPE_TEXT",
"fwF1k7": "FIELD_TYPE_USER",
}
records = sheet1_data.wecom.to_spreadsheet(
app_id, app_secret, doc_id, sheet_id, fields_ids
)
logging.info(records)
assert records
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dataframe_to_online_spreadsheet-0.1.15.tar.gz.
File metadata
- Download URL: dataframe_to_online_spreadsheet-0.1.15.tar.gz
- Upload date:
- Size: 27.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1eafb56987f20b0c18766538fbbe0706cb07f2fe0e918bd5358bdcc85de41905
|
|
| MD5 |
9bf03c44c23e0cd9754f50f0a372bd50
|
|
| BLAKE2b-256 |
e1e92ccead01cb62ac440f40d5427b7521bbbe27f5a76b594010a95383f5cbb6
|
File details
Details for the file dataframe_to_online_spreadsheet-0.1.15-py3-none-any.whl.
File metadata
- Download URL: dataframe_to_online_spreadsheet-0.1.15-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a6d29d66a3c5dba992a01036dbc7dc218bdabb6f9e8fc9a88d88afcd57e59ea
|
|
| MD5 |
38fd8d448248be8b3371741ab8365b58
|
|
| BLAKE2b-256 |
ff79b3130b811fa154caf608bac0f05c487fdbc7e511cbe4b0dd3507fa0717fb
|