Wrapper for Google's Python API.
Project description
googleapiutils2
Utilities for Google's v2 Python API. Currently supports sections of the following resources:
- Drive:
FilesResource
,...
- Sheets:
SpreadsheetsResource
,...
- Geocoding
Quickstart
This project requires Python ^3.10
to run.
Several dependencies are needed, namely the aforesaid Google Python API, but also
Google's oauth library, and requests
. Pre-bundled for ease of use are the fairly
monolithic google-api-stubs
, which greatly improves the usage experience.
via poetry
Install poetry, then run
poetry install
And you're done.
Drive
...
Sheets
Simple example:
...
creds = get_oauth2_creds(client_config=config_path)
sheets = Sheets(creds=creds)
sheet_id = "id"
Sheet1 = SheetsValueRange(sheets, sheet_id, sheet_name="Sheet1")
rows = [
{
"Heyy": "99",
}
]
Sheet1[2:3, ...].update(rows)
What the above does is: - Get the OAuth2 credentials from the client_config.json
file - create a Sheets
object thereupon. - Create a SheetsValueRange
object, which
is a wrapper around the spreadsheets.values
API. - Update the range Sheet1!A2:B3
with the given rows.
Note the slicing syntax, which will feel quite familiar for any Python programmer.
SheetSlice
A SheetsValueRange
object can be sliced in a similar manner to that of a Numpy array.
The syntax is as follows:
slc = Sheet[rows, cols]
Wherein rows
and cols
are either integers, slices of integers (stride is not
supported), strings (in A1 notation), or ellipses (...
).
ix = SheetSlice["Sheet1", 1:3, 2:4] # "Sheet1!B2:D4"
ix = SheetSlice["Sheet1", "A1:B2"] # "Sheet1!A1:B2"
ix = SheetSlice[1:3, 2:4] # "Sheet1!B2:D4"
ix = SheetSlice["A1:B2"] # "Sheet1!A1:B2"
ix = SheetSlice[..., 1:3] # "Sheet1!A1:Z3"
SheetSlice
object can also be used as a key into a SheetsValueRange
object, or a
dictionary (to use in updating a sheet's range, for example). Further, a
SheetsValueRange
object can be sliced in a similar manner to that of a SheetSlice
object, and also be used as a dictionary key.
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
File details
Details for the file googleapiutils2-0.5.2.tar.gz
.
File metadata
- Download URL: googleapiutils2-0.5.2.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.11.2 Darwin/22.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fa4aadc51ea8aa6dcd658957292b4b90f633e218a12fedae719591197351c4e |
|
MD5 | 18894808851158cf64fbabd94b6941c2 |
|
BLAKE2b-256 | edcceaa79ccab62abd921fd9acd408a5bfa47f887c090e494eb7d0178741b127 |
File details
Details for the file googleapiutils2-0.5.2-py3-none-any.whl
.
File metadata
- Download URL: googleapiutils2-0.5.2-py3-none-any.whl
- Upload date:
- Size: 18.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.11.2 Darwin/22.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 898769341a9d960686810272ef8bfb8a6c2b33d6dd1042799b5b595465de6ce7 |
|
MD5 | 641b3d4250229b41c5c182c5a2e48c78 |
|
BLAKE2b-256 | 1aadfb21838fb8144b95a1accca4108a6de83c5b3601c7b4743f348baed28d20 |