On this page
article
Python
Type Safety
Use dataclasses & dacite.from_dict
pip install dacite
from dacite import from_dict
from dataclasses import asdict
from dataclasses import dataclass
@dataclass
class MyObject:
key1: int = None
key2: int = None
data = {
"key1": 1,
"key2": 2,
}
# From dict
instance = from_dict(MyObject, data)
instance.key1
# To dict
instance_dict = asdict(instance)
instance['key1']
Flask
Quick Microservice
import logging
from flask import Flask, request, jsonify
allowed_tld_domains = {
'sandcatdev.com',
}
logging.basicConfig(level=logging.INFO)
app = Flask(__name__)
def check_domain(domain):
sampled = '.'.join(domain.split('.')[-2:])
return sampled in allowed_tld_domains
@app.route('/check_domain', methods=['GET'])
def main():
domain = request.args.get('domain')
app.logger.info(domain)
if check_domain(domain):
return jsonify({'message': f'Domain {domain} is valid'}), 200
else:
return jsonify({'message': f'Domain {domain} is not valid'}), 403
if __name__ == '__main__':
app.run(host="0.0.0.0", port=80)
Symbolic Link
Create symbolic link at location /tmp/my_link_to_fstab with a value of ../my_fstab
from pathlib import Path
Path("/tmp/my_link_to_fstab").symlink_to("../my_fstab")