Mình muốn lưu nội dung một trang web vào một file có tên là URL của chính trang web đó.
Yêu cầu là tên file đọc đươc cả trên windows và Linux.
Một số vấn đề như sau:
- ký tụ maximum trong windows là 255 trong khi URL trên trình duyệt cho phép đến 2000
- Hạn chế một số ký tự đặt biệt khi đăt tên file và thư mục của 1 số OS. (ví dụ #{ơ|ế$&@ v.v)
- tên file có thể đọc được bởi người dùng. (Bởi vì hiện tại mình đang dùng base64 để encode url, chính vì lý do không thể đọc được tên file bằng mắt nên mình mới làm lại)
Mình có functions như thế này
save_url(path_to_folder, url, content_of_url)
read_url(path_to_folder, url)
Mình cần 1 module cho phép chuyển đổi từ filename sang url và url sang filename, bijective, có nghĩa là cho phép chuyển đổi 2 chiều
url == filename2url(url2filename(url))
True
Mình đang hướng đến percent encode và cắt url thành nhiều thư mục.
Nếu ai có ý tưởng hay hơn hoặc có kinh nghiệm về vấn đề này thì giúp mình với.
Mình code bằng python, nhưng nếu mọi người có code hoặc thuật toán của ngôn ngũ khác thì cũng được.
Có 1 phần mềm HTTRACK có thể đã giải quyết tốt vấn đề này, nhưng mình không có thời gian để đọc hết code sources của nó. Bởi vì phần chuyển đổi tên chỉ là 1 phần rất nhỏ của httrack, nếu ai biết họ làm như thế nào và chỉ cho mình thì mình rất cảm ơn.