Hướng dẫn python rename downloaded file - python đổi tên tệp đã tải xuống

-1

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang sử dụng selenium để tự động hóa một báo cáo nhưng khi tôi tải xuống, số cuối cùng thay đổi như thể đó là một chuỗi chẳng hạn: 0001849191, 0001849192, v.v. Tôi không thể làm cho nó theo dõi đơn hàng bởi vì nếu người khác tạo báo cáo, nó có thể bỏ qua một số và Python không hiểu rằng nó theo trình tự và cuối cùng không đổi tên, vì vậy tôi muốn làm cho nó có thể Để kiểm tra tệp được tải xuống cuối cùng và sau đó anh ta đổi tên tệp .xlsx. Đây là mã tôi đã thực hiện để thử nhiều hơn mà không thành công:

filePath = r'c: \ users \ luis.serpa \ tải xuống '

FileName = Max [[filePath + '\' + f cho f trong os.listdir [filePath]], key = os.path.getMtime]

hỏi ngày 28 tháng 7 năm 2021 lúc 18:26Jul 28, 2021 at 18:26

Bạn có thể sử dụng mô -đun HĐH và HĐH để lấy tệp mới nhất.

import os
import glob

Sau đó, bạn xác định đường dẫn. Ví dụ của tôi cung cấp đường dẫn cho bất kỳ thư mục tải xuống.

home = os.path.expanduser['~']
path = os.path.join[home, 'Downloads']

"*" là cần thiết.

path_a = path + "/*"
list_of_files = glob.glob[path_a] # * means all if need specific format then *.csv
latest_file = max[list_of_files, key=os.path.getctime]

Đây là tên của tệp mới

new_file = os.path.join[path, "b.kml"]
print[latest_file]
#prints a.txt which was latest file i created
os.rename[latest_file, new_file]

Tên tệp trở thành B.KML

Đã trả lời ngày 28 tháng 7 năm 2021 lúc 19:10Jul 28, 2021 at 19:10

Farhan Jattfarhan Jattfarhan jatt

5575 Huy hiệu bạc23 Huy hiệu Đồng5 silver badges23 bronze badges

Trước hết, '\' là một chuỗi không hợp lệ, vì

home = os.path.expanduser['~']
path = os.path.join[home, 'Downloads']
0 được sử dụng cho các chuỗi thoát.
home = os.path.expanduser['~']
path = os.path.join[home, 'Downloads']
1 sẽ giúp bạn có một chuỗi với một dấu gạch chéo ngược trong đó.

Nhưng hơn thế nữa, tốt nhất là không xây dựng các con đường theo cách này; Bạn nên sử dụng Os.Path.Join để tạo các đường dẫn ra khỏi các thành phần:

filename = max[[os.path.join[filepath, f] for f in os.listdir[filepath]], key=os.path.getmtime]

Mã này hoạt động tốt để tìm tệp mới nhất trên hệ điều hành của tôi, nếu tôi cung cấp

home = os.path.expanduser['~']
path = os.path.join[home, 'Downloads']
2 cho thư mục tải xuống của riêng tôi.

Đối với cách tiếp cận Python3 hiện đại hơn có hỗ trợ đường dẫn đa nền tảng tốt hơn, bạn cũng có thể sử dụng pathlib

Khi bạn có đường dẫn của tệp, bạn có thể đổi tên nó bằng OS.RENAME.

Đã trả lời ngày 28 tháng 7 năm 2021 lúc 18:38Jul 28, 2021 at 18:38

PhoenixphoenixPhoenix

Huy hiệu bạc 11911 silver badge8 bronze badges

1

Bạn có thể sử dụng mẫu sau để đổi tên tệp bằng Python:

import os
os.rename[r'file path\OLD file name.file type',r'file path\NEW file name.file type']

Bây giờ, hãy xem xét một ví dụ với các bước để đổi tên một tệp bằng Python.

Giả sử rằng mục tiêu của bạn là đổi tên một tệp văn bản từ các sản phẩm của thành phố thành các sản phẩm được vận chuyển.

Dưới đây là các bước mà bạn có thể làm theo để đổi tên tệp của mình:

Bước 1: Chụp đường dẫn nơi lưu trữ tệp

Để bắt đầu, hãy chụp đường dẫn nơi tập tin của bạn được lưu trữ.

Đối với các mục đích trình diễn, hãy để giả sử rằng một tệp có tên là Sản phẩm, được lưu trữ theo đường dẫn sau:Products” is stored under the following path:

C: \ Users \ ron \ Desktop \ test

Lưu ý rằng bạn sẽ cần sửa đổi đường dẫn tệp để phản ánh vị trí lưu trữ tệp trên máy tính của bạn.

Bước 2: Đổi tên tệp

Để đổi tên tệp bằng Python, bạn sẽ cần nhập gói HĐH.

Sau đó, bạn có thể sử dụng mẫu sau để đổi tên tệp của mình:

import os
os.rename[r'file path\OLD file name.file type',r'file path\NEW file name.file type']

Trong bối cảnh ví dụ của chúng tôi:

  • Đường dẫn tệp: C: \ Users \ ron \ Desktop \ test: C:\Users\Ron\Desktop\Test
  • Tên tệp cũ: Sản phẩm: Products
  • Tên tệp mới: Sản phẩm được vận chuyển: Shipped Products
  • Loại tệp: TXT: txt

Don Tiết quên đặt ra R Rv trước đường dẫn tệp để tránh lỗi sau trong Python:r” before the file path to avoid the following error in Python:

.

Mã Python hoàn chỉnh để đổi tên tệp văn bản từ các sản phẩm của Cameron thành các sản phẩm được vận chuyển trên mạng là:

import os
os.rename[r'C:\Users\Ron\Desktop\Test\Products.txt',r'C:\Users\Ron\Desktop\Test\Shipped Products.txt']

Chạy mã [được điều chỉnh theo đường dẫn tệp của bạn] và bạn sẽ nhận được tên tệp mới:

Sản phẩm vận chuyển

Bước tùy chọn: Thêm dấu ngày khi đổi tên tệp

Hãy nói rằng bạn muốn thêm một dấu ngày khi đổi tên tệp.

Bạn có thể hoàn thành nhiệm vụ này bằng gói DateTime.

Trong ví dụ của chúng tôi, để đổi tên tệp sản phẩm của Google thành các sản phẩm được vận chuyển trên mạng + Dấu ngày, bạn sẽ cần áp dụng mã này [được điều chỉnh theo đường dẫn tệp của bạn]:

import os
import datetime

Current_Date = datetime.datetime.today[].strftime ['%d-%b-%Y']
os.rename[r'C:\Users\Ron\Desktop\Test\Products.txt',r'C:\Users\Ron\Desktop\Test\Shipped Products_' + str[Current_Date] + '.txt']

Chạy mã và bạn sẽ nhận được tệp đổi tên này với ngày:

Sản phẩm vận chuyển_07-Aug-2021

Một vài ghi chú về mã:

  • %d-%b-%y & nbsp; phản ánh định dạng ngày của dd-mmm-yyyy reflects the date format of dd-mmm-yyyy
  • Biểu tượng + được sử dụng để kết hợp tên tệp mới, dấu ngày và loại tệp TXT+ symbol is used to concatenate the new file name, the date stamp and the txt file type

Bài Viết Liên Quan

Chủ Đề