move-data
A Python package for moving data between Google Sheets, SharePoint, Google Cloud Storage, and Snowflake.
Features
- Google Sheets Integration: Extract data from Google Sheets with automatic column name normalization
- SharePoint Integration: Download and upload files from SharePoint Online
- Google Cloud Storage: Retrieve files from GCS buckets
- Snowflake Integration: Load data to and extract data from Snowflake databases
Installation
pip install move-data
Usage
Google Sheets
from move_data import get_googlesheets_data
data, sf_query, sf_tr_query = get_googlesheets_data(
name="My Spreadsheet",
sheet="Sheet1",
service_account_path="/path/to/service_account.json",
skip_rows=0 # Optional: skip first N rows
)
SharePoint
from move_data import sharepoint
sp = sharepoint(
client_id="your_client_id",
client_secret="your_client_secret",
tenant_id="your_tenant_id",
site_id="your_site_id",
library_name="Documents",
drive_id="your_drive_id"
)
data, sf_query, sf_tr_query, file, api_url = sp.get_data(
search_query="filename",
relative_path="folder/path",
date_col="date_column",
sheet_name="Sheet1",
skip_rows=0
)
Snowflake
from move_data import snowflake
sf = snowflake(
user="username",
pw="password",
database="database_name",
schema="schema_name",
role="role_name"
)
# Load data to Snowflake
sf.load_data(sf_query, sf_tr_query, "table_name", data, change_tracking=True)
# Get data from Snowflake
df = sf.get_data(sheet_name="Sheet1", search_query="SELECT * FROM table")
Google Cloud Storage
from move_data import googlestorage
gs = googlestorage(service_account="/path/to/service_account.json")
df = gs.get_data(
bucket_name="my-bucket",
path="folder/path",
search_query="filename",
sheet_name="Sheet1",
skip_rows=0
)
Requirements
- Python 3.7+
- See
pyproject.tomlfor full dependency list
License
MIT
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
Release files for move-data 0.1.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| move_data-0.1.9.tar.gz | 7.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| move_data-0.1.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.7 kB
Release files / move_data-0.1.9.tar.gz
| Download URL | move_data-0.1.9.tar.gz |
|---|---|
| Size | 7.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
97d1dcaf70d2c57c577cc9e5bc702649ad34f5f577f3e7bd0c54bb0f4de1bacd
|
|
BLAKE2b-256 checksum How to use checksums |
1bed603e6ba42fab82de8e18c38d02eda385310d5cfc36af0e43ca849797f8c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Release files / move_data-0.1.9-py3-none-any.whl
| Download URL | move_data-0.1.9-py3-none-any.whl |
|---|---|
| Size | 7.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b01957ce96fce9f14ab271b72998d2c71bc34daf698d01db77dbe5065f61240b
|
|
BLAKE2b-256 checksum How to use checksums |
ad6be83ff8332b37969eb1142308e183d89ad0b21ed2aa286cd8e2164c7752b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|