GPT tiếp:
Để biên dịch đoạn mã Python thành một file .exe, bạn có thể sử dụng công cụ PyInstaller. Dưới đây là các bước cụ thể để làm điều đó:
- Cài đặt PyInstaller:
pip install pyinstaller
- Lưu đoạn mã Python vào một file, ví dụ gps_extractor.py.
- Chạy PyInstaller để biên dịch file Python thành file .exe:
pyinstaller --onefile gps_extractor.py
Lệnh --onefile sẽ tạo ra một file .exe duy nhất chứa toàn bộ mã và các thư viện cần thiết.
- Tìm file .exe đã được biên dịch:
- Sau khi PyInstaller hoàn thành, bạn sẽ thấy file .exe nằm trong thư mục dist.
Ví dụ Cụ thể
Giả sử bạn đã lưu đoạn mã Python vào file gps_extractor.py, dưới đây là hướng dẫn cụ thể:
- Cài đặt PyInstaller:
pip install pyinstaller
- Lưu đoạn mã Python vào file gps_extractor.py:
from PIL import Image
from exif import Image as ExifImage
import pandas as pd
import os
def get_decimal_from_dms(dms, ref):
degrees = dms[0] + dms[1] / 60.0 + dms[2] / 3600.0
if ref == 'S' or ref == 'W':
degrees = -degrees
return degrees
def get_gps_info(file_path):
try:
with open(file_path, 'rb') as image_file:
img = ExifImage(image_file)
if img.has_exif:
gps_info = img.gps_latitude, img.gps_latitude_ref, img.gps_longitude, img.gps_longitude_ref
lat = get_decimal_from_dms(gps_info[0], gps_info[1])
lon = get_decimal_from_dms(gps_info[2], gps_info[3])
return lat, lon
except Exception as e:
print(f"Error reading {file_path}: {e}")
return None, None
def scan_folder(folder_path):
data = []
for root, _, files in os.walk(folder_path):
for file in files:
if file.lower().endswith(('jpg', 'jpeg')):
file_path = os.path.join(root, file)
lat, lon = get_gps_info(file_path)
data.append([file, lon, lat])
return data
def save_to_excel(data, output_file):
df = pd.DataFrame(data, columns=['File Name', 'Longitude', 'Latitude'])
df.to_excel(output_file, index=False)
if __name__ == "__main__":
folder_path = 'path_to_your_folder' # Thay đổi đường dẫn tới thư mục chứa ảnh của bạn
output_file = 'gps_coordinates.xlsx'
data = scan_folder(folder_path)
save_to_excel(data, output_file)
print(f"Data saved to {output_file}")
- Chạy PyInstaller để biên dịch:
pyinstaller --onefile gps_extractor.py
- Tìm file .exe đã biên dịch:
- Mở thư mục dist trong thư mục chứa gps_extractor.py. Bạn sẽ thấy file gps_extractor.exe nằm trong đó.
Bây giờ bạn đã có thể sử dụng file .exe này trên bất kỳ máy tính Windows nào mà không cần cài đặt Python hoặc các thư viện liên quan.