Skip to main content

Helpers

various helpers from nic gist

full docs here https://thanakijwanavit.github.io/nicHelper/

from nicHelper.wrappers import add_method

Install

pip install nicHelper

How to use

method module

add method to a class

class A:
  pass

@add_method(A)
def printHello(self):
  print('hello')

A().printHello()
hello

This is equivalent to

class A:
  def printHello(self):
    print('hello')

Dict utilities

Pretty print a dict

print only the first 10 characters of dict key, works with deep nested dict

from nicHelper.dictUtil import printDict
printDict({'key':'sjfhdkljhafsdlkjhdfaslkjhkljfadshklhfa', 'nestedKey':{'nestedKey2':'938023840843', 'nested3':{'nested4':'hello'}}})
key : sjfhdkljha
nestedKey
 nestedKey2 : 9380238408
 nested3
  nested4 : hello

change all nested datetime object into timestamp for json compatibility

from nicHelper.dictUtil import filterDt
from datetime import datetime

filterDt({'time': {'time2':datetime.now()}, 'hello': 'world'})
{'time': {'time2': 1615312774.297602}, 'hello': 'world'}

Exception module

from nicHelper.exception import errorString
try:
  error
except:
  print(f'error is \n{errorString()}')
error is 
Traceback (most recent call last):
  File "<ipython-input-6-86083feec525>", line 3, in <module>
    error
NameError: name 'error' is not defined

Image utils

from nicHelper.images import imageFromUrl, imageToS3, showImgS3, resizeImage
from s3bz.s3bz import S3
## test variables
key = 'testCat.png'
path = '/tmp/testCat.png'
bucket = 'villa-remove-bg-small-output'
url = 'https://sites.google.com/site/funnycatmeawww/_/rsrc/1422326075261/home/6997052-funny-cat.jpg?height=675&width=1200'

Resize images

resizeImage(url, 400)

png

load image from url

img = imageFromUrl(url)
type(img)
PIL.JpegImagePlugin.JpegImageFile

save Image to S3

imageToS3(img, bucket, key)
S3.exist(key,bucket)
saving image to villa-remove-bg-small-output/testCat.png





True

display image from s3

## full test
showImgS3(bucket, key)

png

Secrets

from nicHelper.secrets import getSecret
secret = getSecret(name="removeBg", region='ap-southeast-1')
from nicHelper.shortenLink import shorten
shorten('https://www.youtube.com/watch?v=fp85zRg2cwg')
'https://tenxor.sh/d3Cp'

Metadata

Release files for nicHelper 0.0.52

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nicHelper 0.0.52
File Size Uploaded
nicHelper-0.0.52.tar.gz 19.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nicHelper 0.0.52
File Interpreter ABI Platform
nicHelper-0.0.52-py3-none-any.whl Python 3 none any Details

Total release size: 41.6 kB

Release files / nicHelper-0.0.52.tar.gz

Download URL nicHelper-0.0.52.tar.gz
Size 19.0 kB
Tags Source
SHA-256 checksum
How to use checksums
4f11ca6e8ab410faa182ad92fcfb61fcf2e8efb8e6012d5d88a08282eb864fe5
BLAKE2b-256 checksum
How to use checksums
2f06614cbd6d90a2df8e4e46eb92a14daf26c935cc65b5e41aa2b0cccf3718a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.23.0 setuptools/49.6.0.post20201009 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.6

Release files / nicHelper-0.0.52-py3-none-any.whl

Download URL nicHelper-0.0.52-py3-none-any.whl
Size 22.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
96a2889c53753f7c803ca396e313d3cdfe8808c3433647799f141d23a32a4c41
BLAKE2b-256 checksum
How to use checksums
f42d14ef40657687f5b1bc4035e1afa8688d5120c3dd0da14413d414072f8d73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.23.0 setuptools/49.6.0.post20201009 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.6

Release history Release notifications | RSS feed

0.0.98

2 release files

0.0.97

2 release files

0.0.96

2 release files

0.0.95

2 release files

0.0.93

2 release files

0.0.92

2 release files

0.0.91

2 release files

0.0.90

2 release files

0.0.89

2 release files

0.0.88

2 release files

0.0.87

2 release files

0.0.86

2 release files

0.0.85

2 release files

0.0.84

2 release files

0.0.83

2 release files

0.0.82

2 release files

0.0.81

2 release files

0.0.80

2 release files

0.0.79

2 release files

0.0.78

2 release files

0.0.77

2 release files

0.0.76

2 release files

0.0.75

2 release files

0.0.74

2 release files

0.0.73

2 release files

0.0.72

2 release files

0.0.71

2 release files

0.0.70

2 release files

0.0.69

2 release files

0.0.68

2 release files

0.0.67

2 release files

0.0.66

2 release files

0.0.65

2 release files

0.0.64

2 release files

0.0.63

2 release files

0.0.62

2 release files

0.0.61

2 release files

0.0.60

2 release files

0.0.59

2 release files

0.0.58

2 release files

0.0.57

2 release files

0.0.56

2 release files

0.0.55

2 release files

0.0.54

2 release files

0.0.53

2 release files

This release

0.0.52 This release

2 release files

0.0.51

2 release files

0.0.50

2 release files

0.0.49

2 release files

0.0.48

2 release files

0.0.43

2 release files

0.0.42

2 release files

0.0.41

2 release files

0.0.40

2 release files

0.0.39

2 release files

0.0.38

2 release files

0.0.37

2 release files

0.0.36

2 release files

0.0.28

2 release files

0.0.27

2 release files

0.0.26

2 release files

0.0.25

2 release files

0.0.24

2 release files

0.0.20

2 release files

0.0.19

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page