Chuyển đến nội dung chính

[Python] Tạo 1 package Python đưa lên pip

Hướng dẫn tạo package Python
Các bạn dùng python thì quá quen với cách cài đặt các thư viện từ pip

cài đặt
pip install <tên thư viện>

gở bỏ :
pip uninstall <tên thư viện>

Nhưng có khi nào các bạn tự hỏi mình muốn đưa 1 thư viện lên trên pip thì sẽ làm như thế nào ?

Các step bên dưới sẽ giải quyết thắc mắc của bạn :

Step 1 : đăng kí 1 tài khoản
https://pypi.org/account/register/

hoàn thành đăng kí xong

Step 2 : Tải thư mục sample về
https://github.com/txq92/sample_pip

Step 3 : chỉnh sửa thành code của mình :



Nội dung chỉnh sửa :
3.1 File setup.py
import setuptools

setuptools.setup(
    name="vnhass",
    version="0.0.2",
    author="@trumxuquang",
    author_email="trumxuquang@gmail.com",
    description="https://vnhass.blogspot.com/",
    long_description="https://vnhass.blogspot.com/",
    long_description_content_type="text/markdown",
    url="https://github.com/pypa/sampleproject",
    packages=setuptools.find_packages(),
    classifiers=[
        # checked by 'pip install'. See instead 'python_requires' below.
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.6',
        'Programming Language :: Python :: 3.7',
        'Programming Language :: Python :: 3.8',
        'Programming Language :: Python :: 3.9',
        'Programming Language :: Python :: 3 :: Only',
    ],
)

name = "tên trên pip"
version = " version code"

3.2 File __init__.py
import code vào

# -*- coding: utf-8 -*-
from .app import sumevn

3.3 File app.py
Nội dung chính của code

Step 4 : Buil file code
cấu trúc trước khi buil
/sample_pip /vnhass __init__.py
app.py setup.py LICENSE README.md

Trước hết, phải chắc chắn rằng bạn đã cài đặt 2 packages: setuptools và wheel:
$ pip install -U setuptools wheel

Thực hiện buiding
python setup.py sdist bdist_wheel

=> kết quả ra như bên dưới là OK




Step 4 : Đưa code lên pip hub
$ pip install -U twine

Sau khi cài đặt xong thì dùng lệnh đưa lên
python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/*  --verbose

PS C:\Users\ADMIN\Desktop\sample_pip> python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/* --verbose Uploading distributions to https://upload.pypi.org/legacy/ dist\vnhass-0.0.3-py3-none-any.whl (2.3 KB) dist\vnhass-0.0.3.tar.gz (1.9 KB) Enter your username: xxxx Enter your password: username: xxxx password: <hidden> Uploading vnhass-0.0.3-py3-none-any.whl 100%|█████████████████████████████████████████████████████████████████████████████| 5.77k/5.77k [00:01<00:00, 3.24kB/s] Uploading vnhass-0.0.3.tar.gz 100%|█████████████████████████████████████████████████████████████████████████████| 5.38k/5.38k [00:01<00:00, 4.36kB/s] View at: https://pypi.org/project/vnhass/0.0.3/ PS C:\Users\ADMIN\Desktop\sample_pip>

Step 5 : Cài đặt thử trên máy

PS C:\Users\ADMIN\Desktop\sample_pip> pip install vnhass Defaulting to user installation because normal site-packages is not writeable Collecting vnhass Downloading vnhass-0.0.2-py3-none-any.whl (2.4 kB) Installing collected packages: vnhass Successfully installed vnhass-0.0.2


Done

Nhận xét

Bài đăng phổ biến từ blog này

[HA] Cài đặt armbian trên tivi box để chạy home assistant tháng 10/2020

Hướng đẫn cài armbian mới nhất "Việc cài có thê gây hỏng tivi box , tự chịu trách nhiệm cho việc mình làm "  Bạn không cần xem nữa nếu mua sản phẩm cài sẵn tại đây .(.) https://shopee.vn/vipk31?smtt=0.0.9 Chuẩn bị : +  Tivi box x96 mini (hoặc loại khác có sử dụng chip Amolic S905W) + Thẻ nhớ 32GB + File img armbian (https://yadi.sk/d/_rQgn_FosYuW0g/20.09) + Dây nối máy tính với box (cứu box khi cài vào emmc bị hỏng box ) Step 1 : Flash file image vào thẻ nhớ + Dùng phần mềm (https://www.balena.io/etcher/) để thực hiện flash vào thẻ nhớ Quá trình flash rất nhanh khoảng 5 phút là xong Step 2 : Mở thẻ nhớ đã flash xong  Thực hiện config để box nhận thẻ nhớ và vào armbian file cần chỉnh sửa : extlinux.conf Chú ý chọn đúng file dbt cùng với loại box  ********************************************************************************************************************************* Pay attention. Starting from version  20.08 (20200814) , the configuration order for the u...

[HA] API tính điện tiêu thụ hằng ngày evncpc miền trung cho home assistant

Thông tin được lấy từ nguồn dữ liệu tại trang  https://cskh.cpc.vn/  với user/pass các bạn cung cấp . Chúng tôi chỉ lấy thông tin này và chuyển đổi dạng để phù hợp sử dụng trên Home Assistant . Chúng tôi sẽ không chiụ trách nhiệm về độ chính xác của dữ liệu này Sử dụng Rest sensor bạn cần kết nối internet , đôi khi do đường truyền / hoặc trang web EVN bị lỗi sẽ không lấy được data. Update : 2020.07.01 EVN không cho truy cập trang web từ ip nước ngoài nên api này cài trên web nước ngoài sẽ không hoạt động nữa. Ae nào cần code chạy local thì inbox Dạo này lướt face thấy mọi người  ai cũng bảo sao điện tăng nhiều vậy , có ngừoi nghi ngờ EVN ghi gian dối số điện . Mình không làm ở EVN nên không biết có gian dối thật không nhưng EVn hiện tại đo chữ số điện từ xa , 1 ngày đo khoảng 2 -3 lần , như vậy khách hàng sẽ quản lý được ngày tiêu thụ bao nhiêu kwh .cuối tháng có thể dối chiếu xem đúng không . Hình ảnh của EVn cung cấp do hằng ngày số kwh Dựa vào thông tin EVN cung cấp tr...

[HA] Lấy chỉ số đo điện từ công tơ điện lực miễn phí

Note: cái này đang hương dẫn cho điện lực miền trung , các miền khác chắc cũng tương tự  EVN không cho truy cập từ IP nước ngoài Anh em xem các cách khác trong blog để lấy thông tin điện lực add vào home assistant bài mới đơn giản hơn : https://vnhass.blogspot.com/2020/06/ha-api-tinh-ien-tieu-thu-hang-ngay.html?fbclid=IwAR10n1hURu1Gs4mjeAHG6RYukbdcLt-KpZB3J7GpUKhzGfjHQK4M4pOZjOI Đây là bài viết hướng dẫn lấy chỉ số điện thời gian thực từ công tơ của điện lực để đưa vào HA Sẽ có 2 cách lấy Cách 1 : lấy từ website , cách này đơn giản nhưng phụ thuộc vào bên thứ 3 . cách này dễ ai cũng thực hiện được Cách 2 : Debug app của điện lực , lấy api và token cách này phức tạp , cần nhiều "chất xám" hơn Sau đây mình sẽ hướng dẫn làm cách thứ 1 . Cách 2 sẽ hướng dẫn sau Đầu tiên các bạn phải login được vào trang cskh của điện lực bằng tài khoản và mật khẩu bên điện lực cung cấp , ai không biết thì call tổng đài nhờ hộ hỗ trợ https://cskh.cpc.vn/Default.aspx Trong này sẽ có n...