Skip to content

Instantly share code, notes, and snippets.

View alucard001's full-sized avatar

Ellery Leung alucard001

View GitHub Profile
@alucard001
alucard001 / img_to_pdf.py
Created May 28, 2024 16:13
Convert *.pdg files and merge it into a PDF using Python
# Remember to install Pillow and ghostscript first
# In Mac, to install GhostScript, run: brew install ghostscript
# In Mac, to install Pillow
# TODO
# - Cannot handle directory name with space
# - If directory did not contains any *.pdg file, it will throw error (e.g. a directory within a directory)
# Directory Structure
# ./books
@alucard001
alucard001 / sample.py
Created May 1, 2024 13:41
Ollama using Chinese embedding model and Qwen to answer question
import ollama
import chromadb
import os
# Read files in `data` dir as string
# and create a list of documents
data_dir = 'data'
files = os.listdir(data_dir)
documents = []
for file in files:
@alucard001
alucard001 / data_source.py
Last active January 24, 2024 07:06
Python3 AWS Lambda Send email with CSV attachment full code
"""
Again, don't just copy and paste the code below. This is for your study only.
Change the code to suit your case accordingly.
"""
import logging
import csv
import zipfile
from zoneinfo import ZoneInfo
@alucard001
alucard001 / send_email_with_attachments.py
Created January 18, 2024 03:01 — forked from kuharan/send_email_with_attachments.py
Send email with attachments in AWS lambda
def send_email(sender, recipient, aws_region, subject, file_name):
# The email body for recipients with non-HTML email clients.
BODY_TEXT = "Hello,\r\nPlease find the attached file."
# The HTML body of the email.
BODY_HTML = """\
<html>
<head></head>
<body>
<h1>Hello!</h1>
<p>Please find the attached file.</p>
@alucard001
alucard001 / Dockerfile
Last active May 29, 2024 17:13
Docker + Laravel + Nginx + Swoole Reverse Proxy Setup
FROM php_base:latest
RUN apt update -y && apt upgrade -y
WORKDIR /var/www/html
RUN composer update --optimize-autoloader
COPY src/. /var/www/html
COPY build/php/.env.local /var/www/html/.env
@alucard001
alucard001 / llama.ipynb
Created July 22, 2023 10:28
llama.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@alucard001
alucard001 / docker-compose.yml
Last active February 19, 2023 14:58
Docker compose for Kafka + Zookeeper + Kafka UI - Just work!
# Just run `docker compose up --build` to build and run these containers
# To access the UI go to http://localhost
# While I haven't REALLY use program to access producer/consumer, you can use the Python wrapper
# provided by Confluent: https://developer.confluent.io/get-started/python/#introduction
# to get start
version: "3"
services:
zookeeper:
@alucard001
alucard001 / GetNextBusinessDay.php
Created March 30, 2020 02:57
[PHP]Get Next Business Day, include/not include holiday
<?php
/**
* One of my task is to create a function that find the next business day.
*
* Reference: https://stackoverflow.com/a/5532070/1802483
*/
class GetNextBusinessDay{
// Get a list of holiday in https://holidayapi.com/. Then I copy, paste and edit it manually to make this list
private $holidayList = [
"2020-04-04",
@alucard001
alucard001 / GoogleIndexing.py
Created May 27, 2019 04:49
Google Indexing API V3 Working example with Python 3
from oauth2client.service_account import ServiceAccountCredentials
import httplib2
import json
import pandas as pd
# https://developers.google.com/search/apis/indexing-api/v3/prereqs#header_2
JSON_KEY_FILE = "json_key_file_downloaded_after_creating_your_google_service_account_see_above_details_on_how_to_do.json"
SCOPES = ["https://www.googleapis.com/auth/indexing"]