[Funland] Các cụ IT (Dev) giúp e với ạ! E cần lấy tọa độ gps của 1 folder nhiều ảnh.

Hà Duy Phương

Xe tải
Biển số
OF-202359
Ngày cấp bằng
16/7/13
Số km
404
Động cơ
325,229 Mã lực
vậy là lv cao vẫn cần, lv thấp thất nghiệp hở cụ :D
Tôi tin người chưa có kinh nghiệm thì việc dùng AI cũng sẽ không mang lại kết quả gì. Những tool AI nhỏ nhỏ thì cũng không bán được, vậy nên cũng k đá bát cơm của nhau. 😀😀😀
 

rav4_2010

Xe buýt
Biển số
OF-55923
Ngày cấp bằng
26/1/10
Số km
598
Động cơ
448,160 Mã lực
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 đó:

  1. Cài đặt PyInstaller:

    pip install pyinstaller
  2. Lưu đoạn mã Python vào một file, ví dụ gps_extractor.py.
  3. 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.
  4. 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ể:

  1. Cài đặt PyInstaller:
    pip install pyinstaller
  2. 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}")
  3. Chạy PyInstaller để biên dịch:

    pyinstaller --onefile gps_extractor.py
  4. 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.
Python mà ko có thụt lề như này thì sao chạy được. Nnó viết ra cho người hiểu sản phẩm của nó.
 
Thông tin thớt
Đang tải
Top