Một trong những công cụ hữu ích mà bạn có thể sử dụng để tải file từ mạng Internet là Wget. Trong bài viết này, tôi sẽ hướng dẫn bạn cách sử dụng Wget để tải file từ Google Drive, một dịch vụ lưu trữ đám mây phổ biến của Google.
Hãy cùng khám phá cách thức đơn giản nhưng lại rất hiệu quả để lấy các file của bạn từ Google Drive về VPS / Hosting của bạn nhé!
Giới thiệu về Google Drive và Wget
Google Drive là một dịch vụ lưu trữ đám mây rất phổ biến, nó cho phép người dùng lưu trữ và chia sẻ các tập tin trực tuyến.
Wget là một công cụ mã nguồn mở dùng để tải xuống các tập tin từ mạng Internet. Nó có thể tải xuống tất cả các tập tin từ một trang web hoặc từ một đường dẫn nhất định. Wget có thể hoạt động trên nhiều hệ điều hành, bao gồm Windows, MacOS và Linux.
Mặc định link Google Drive sẽ sinh ra đường dẫn ngẫu nhiên tùy từng loại file hoặc dung lượng file, nên việc bạn copy trực tiếp link của file Google Drive hiển thị trên trình duyệt và chạy wget thì sẽ bị báo lỗi.
Google Drive cũng sẽ phân biệt 2 loại file là file dung lượng nhỏ và file dung lượng lớn. Các file có kích thước dung lượng dưới 100MB được gọi là nhỏ, còn trên 100MB thì là dung lượng lớn. Vì vậy cách tải bằng lệnh wget với 2 trường hợp này cũng sẽ khác nhau.
Sử dụng Wget để tải file từ Google Drive như thế nào
Lấy link chia sẻ file trên Google Drive để Wget
Để tải file từ Google Drive bằng Wget, bạn cần phải có đường dẫn “dùng để tải” (download link) cho file đó. Để lấy đường dẫn tải này, hãy làm theo các bước sau:
Bước 1: Đăng nhập vào tài khoản Google Drive của bạn.
Bước 2: Mở file mà bạn muốn tải.
Bước 3: Nhấp vào biểu tượng “Chia sẻ” (hoặc nhấp vào biểu tượng 3 chấm ngang và chọn “Chia sẻ”).
Bước 4: Chọn Quyền hạn chung sang “Bất kỳ ai có đường liên kết”.
Bước 5: Sao chép đường dẫn liên kết tải mà bạn muốn sử dụng với Wget.
Lúc này bạn sẽ có một đường link có cấu trúc như sau:
https://drive.google.com/file/d/123ABC456DEF789GHI/view?usp=sharing
Trong đó 123ABC456DEF789GHI là ID của file được lưu trên Google Drive.
Bạn sẽ cần ghép nối ID vừa lấy được vào lệnh command của Wget như sau:
Với file dung lượng nhỏ:
wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=ID' -O FILENAME
Với file dung lượng lớn:
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=ID' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=ID" -O FILENAME && rm -rf /tmp/cookies.txt
Trong đó ID là đoạn 123ABC456DEF789GHI của file ở trên còn FILENAME là tên file bạn muốn lưu ví dụ như backup.zip.
Lưu ý: Đường dẫn tải có thể hết hạn sau một khoảng thời gian nên bạn có thể phải tạo lại liên kết tải mới trước khi tải file.
Để đơn giản hóa việc lấy ID Google Drive File và ghép nối vào Command Wget Google Drive, tôi đã viết ra một công cụ đơn giản tại đây: Wget Google Drive
Công cụ sẽ lọc ra ID và ghép nối sẵn vào Command, việc bạn cần làm đó là lấy link chia sẻ file trên Google Drive và dán vào công cụ.
Sử dụng Terminal của VPS / Hosting để wget google drive
Sau khi có được lệnh Command, bạn tiến hành truy cập vào Terminal của VPS / Hosting của mình.
Lúc này bạn copy lệnh Wget tương ứng với dung lượng của file và dán vào Terminal, cuối cùng nhấn Enter để thực hiện lệnh.
Tổng kết
Sử dụng wget để tải tệp từ Google Drive là một cách tiện lợi và hiệu quả để có được dữ liệu mà không cần phải tải về trực tiếp trên máy tính.
Wget Google Drive giúp tôi đã tiết kiệm được hàng tá thời gian, đơn giản hóa các tác vụ như di chuyển dữ liệu, restore dữ liệu, cài đặt thư viện được đóng gói và upload lên Google Drive,…
Hy vọng bài viết này sẽ giúp bạn có thể giúp ích cho bạn, nếu bạn có cách làm tối ưu hơn, hãy chia sẻ cho tôi ngay bên dưới nhé.