AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

Python的小應用--使用PyWebIO和PyMySQL創建身份證號碼查詢工具

來源: 責編: 時間:2023-11-14 17:09:37 306觀看
導讀最近,我的好哥們給我提了一個新的需求,讓我用Python編程語言和MySQL數據庫創建一個簡單的身份證號碼查詢工具。這個工具可以掃描指定文件夾中的文件名,并將它們存儲到MySQL數據庫中。用戶只需輸入身份證號碼,就可以查詢文

最近,我的好哥們給我提了一個新的需求,讓我用Python編程語言和MySQL數據庫創建一個簡單的身份證號碼查詢工具。這個工具可以掃描指定文件夾中的文件名,并將它們存儲到MySQL數據庫中。用戶只需輸入身份證號碼,就可以查詢文件名中是否包含這個身份證號碼。Q3m28資訊網——每日最新資訊28at.com

Q3m28資訊網——每日最新資訊28at.com

其中,界面部分我決定使用PyWebIO,PyWebIO提供了一系列命令式的交互函數來在瀏覽器上獲取用戶輸入和進行輸出,將瀏覽器變成了一個“富文本終端”,可以用于構建簡單的Web應用或基于瀏覽器的GUI應用。PyWebIO還可以方便地整合進現有的Web服務,不需要編寫HTML和JS代碼,就可以構建出具有良好可用性的應用。Q3m28資訊網——每日最新資訊28at.com

準備工作

首先,確保你已經安裝了必要的 Python 庫。你可以使用以下命令安裝它們:Q3m28資訊網——每日最新資訊28at.com

pip install pymysql pywebio

接下來,我們需要一個 MySQL 數據庫來存儲文件名。在這里,我們將數據庫配置信息存儲在一個 JSON 文件中,以方便管理和更新。Q3m28資訊網——每日最新資訊28at.com

import jsonwith open(r"path/to/your/config.json", 'r', encoding='utf-8') as f:    db_config = json.loads(f.read())

數據庫操作

我們將使用 PyMySQL 庫來連接 MySQL 數據庫,創建一個表來存儲文件名,并實現插入和查詢操作。Q3m28資訊網——每日最新資訊28at.com

def create_table(connection):    # 創建數據庫表    create_table_query = """    CREATE TABLE IF NOT EXISTS files (        id INT AUTO_INCREMENT PRIMARY KEY,        file_name VARCHAR(255) NOT NULL UNIQUE    )    """    try:        with connection.cursor() as cursor:            cursor.execute(create_table_query)        connection.commit()    except Error as e:        print(f"Error: {e}")def insert_filename(connection, filename):    # 插入文件名到數據庫表    insert_query = "INSERT INTO files (file_name) VALUES (%s)"    try:        with connection.cursor() as cursor:            cursor.execute(insert_query, (filename,))        connection.commit()    except Error as e:        print(f"Error: {e}")def get_filenames_from_db(connection):    # 從數據庫中獲取所有文件名    select_query = "SELECT file_name FROM files"    try:        with connection.cursor() as cursor:            cursor.execute(select_query)            result = cursor.fetchall()            return [row[0] for row in result]    except Error as e:        print(f"Error: {e}")        return []

文件夾掃描和數據存儲

接下來,我們將使用 Python 的 os 模塊掃描文件夾中的文件,并將文件名插入到數據庫中。Q3m28資訊網——每日最新資訊28at.com

import osdef scan_folder_and_insert(connection):    # 掃描文件夾并將文件名插入數據庫    folder_path = r'C:/path/to/your/folder'    for filename in os.listdir(folder_path):        if os.path.isfile(os.path.join(folder_path, filename)):            insert_filename(connection, filename)

PyWebIO Web 界面

現在,我們將使用 PyWebIO 創建一個簡單的 Web 界面,允許用戶輸入身份證號碼并查詢數據庫。Q3m28資訊網——每日最新資訊28at.com

from pywebio import start_serverfrom pywebio.input import input, TEXTfrom pywebio.output import put_text, put_tabledef search_file_by_id(connection):    id_number = input("請輸入身份證號碼:", type=TEXT)    filenames = get_filenames_from_db(connection)    results = [filename for filename in filenames if id_number in filename]    if results:        put_table([(result,) for result in results], header=['文件名'])    else:        put_text("沒有找到包含身份證號碼的文件名。")if __name__ == "__main__":    # 連接到MySQL數據庫    try:        with connect(**db_config) as connection:            create_table(connection)            scan_folder_and_insert(connection)            # 啟動Web界面            start_server(search_file_by_id, port=80)    except Error as e:        print(f"Error: {e}")

打包為可執行文件

最后,我們可以使用 PyInstaller 工具將 Python 腳本打包為可執行文件。打開命令行終端,執行以下命令:Q3m28資訊網——每日最新資訊28at.com

pyinstaller -F -w your_script_name.py

請將 your_script_name.py 替換為你的 Python 腳本文件名。執行完畢后,你將在 dist 文件夾中找到生成的可執行文件。Q3m28資訊網——每日最新資訊28at.com

在游覽器中運行效果如下Q3m28資訊網——每日最新資訊28at.com

圖片Q3m28資訊網——每日最新資訊28at.com

通過這個簡單的工具,用戶可以輕松地查詢文件名中是否包含特定身份證號碼。當然,這只是一個靈活的基礎,可以根據需要繼續擴展和定制功能。Q3m28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-24740-0.htmlPython的小應用--使用PyWebIO和PyMySQL創建身份證號碼查詢工具

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 蘋果揮刀斬殺“搖一搖”

下一篇: Git 的遴選和撤銷操作是如何利用三路合并的

標簽:
  • 熱門焦點
Top