Quét danh sách hình ảnh của một trang web: cơ chế, giới hạn và những gì cần tôn trọng
Công cụ nhận một địa chỉ trang, lấy mã HTML của trang đó qua một dịch vụ trung gian rồi đọc toàn bộ thẻ ảnh trong đó, ghép đường dẫn về dạng đầy đủ, bỏ ảnh trùng và ảnh đo lường một điểm ảnh, sau cùng bày ra lưới xem trước kèm nội dung thuộc tính alt. Bạn tải từng ảnh hoặc tải hàng loạt tối đa hai mươi ảnh mỗi lượt.
Tính năng nổi bật
- Nhập một địa chỉ trang và quét toàn bộ thẻ ảnh có trong mã HTML của trang đó
- Đọc cả thuộc tính src lẫn data-src nên bắt được nhiều trường hợp ảnh tải trễ
- Ghép đường dẫn tương đối và đường dẫn bắt đầu bằng hai dấu gạch chéo về dạng đầy đủ
- Bỏ qua ảnh nhúng dạng data và ảnh có tên chứa chuỗi 1x1 hoặc pixel, vốn là ảnh đo lường
- Loại các đường dẫn trùng nhau để danh sách không lặp
- Lưới xem trước dạng ô vuông, ảnh nào hỏng thì tự ẩn khỏi lưới
- Hiện nội dung thuộc tính alt dưới mỗi ảnh, tiện để soát alt khi kiểm tra SEO
- Tải từng ảnh, mở ảnh gốc ở tab mới, hoặc tải hàng loạt tối đa hai mươi ảnh mỗi lượt
Việc gì thật sự cần tới một danh sách ảnh của cả trang
Có ba việc mà bấm chuột phải lưu từng ảnh không giải quyết nổi. Thứ nhất là soát thuộc tính alt khi kiểm tra SEO: bạn cần thấy đồng thời tất cả ảnh của trang và phần chữ mô tả đi kèm để biết ảnh nào bị bỏ trống alt, ảnh nào bị nhồi từ khóa, và lưới xem trước ở đây bày đúng cặp thông tin đó. Thứ hai là kiểm kê tài nguyên khi tiếp nhận một website cũ hoặc trước khi chuyển nền tảng, lúc bạn cần biết trang đang gọi ảnh từ những tên miền nào và có bao nhiêu ảnh. Thứ ba là thu thập ảnh của chính mình từ một trang mình sở hữu nhưng không còn quyền truy cập vào phần quản trị. Ngoài ba việc đó, hãy cân nhắc kỹ, vì tải ảnh của người khác về dùng lại là chuyện bản quyền chứ không phải chuyện kỹ thuật.
Lợi ích khi sử dụng
- Thấy toàn bộ ảnh của một trang cùng thuộc tính alt trong một màn hình
- Không phải mở công cụ dành cho nhà phát triển rồi dò từng thẻ ảnh
- Đường dẫn tương đối được ghép sẵn nên bấm mở là ra ảnh gốc
- Ảnh đo lường một điểm ảnh bị lọc bớt nên danh sách sạch hơn
- Không cần cài phần mềm quét web hay biết dòng lệnh
Cách quét ảnh của một trang
- 1Dán địa chỉ đầy đủ của trang cần quét, gồm cả phần giao thức, vào ô nhập rồi bấm nút tìm kiếm hoặc nhấn phím Enter.
- 2Chờ công cụ lấy mã HTML về và phân tích, thời gian phụ thuộc tốc độ phản hồi của trang đích và của dịch vụ trung gian.
- 3Đọc dòng tổng số ảnh tìm thấy, rồi lướt lưới xem trước và đối chiếu phần chữ alt hiện dưới mỗi ảnh.
- 4Rê chuột lên một ảnh để hiện hai nút, một nút tải ảnh về máy và một nút mở ảnh gốc ở tab mới xem kích thước thật.
- 5Bấm nút tải tất cả nếu cần lấy hàng loạt, lưu ý mỗi lượt chỉ xử lý hai mươi ảnh đầu danh sách và trình duyệt có thể hỏi xác nhận cho phép tải nhiều tệp.
Công cụ lấy nội dung trang bằng cách nào, và điều đó có ý nghĩa gì với bạn
Trình duyệt không cho phép một trang web tự đọc mã HTML của trang thuộc tên miền khác, đó là quy tắc cùng nguồn gốc. Vì vậy công cụ này không tự tải trang đích mà gửi địa chỉ bạn nhập tới một dịch vụ trung gian công cộng, dịch vụ đó tải trang giúp rồi trả mã HTML về, sau đó phần phân tích thẻ ảnh mới chạy trong trình duyệt của bạn. Có hai hệ quả cần biết. Một là địa chỉ bạn nhập đi qua máy chủ của bên thứ ba, nên đừng dán vào đây những đường dẫn chứa mã phiên đăng nhập, khóa truy cập hay tham số nhận diện cá nhân. Hai là kết quả phụ thuộc vào một dịch vụ miễn phí bên ngoài, nên khi dịch vụ đó quá tải, bị chặn hoặc giới hạn số lượt, bạn sẽ nhận thông báo không tải được trang dù địa chỉ hoàn toàn đúng. Trang đích cũng có thể trả về nội dung khác cho dịch vụ trung gian so với nội dung nó trả cho trình duyệt thật của bạn.
Vì sao danh sách thiếu ảnh so với những gì bạn nhìn thấy trên trang
Công cụ chỉ đọc mã HTML thô mà máy chủ trả về, không chạy JavaScript của trang. Nên với các website dựng giao diện bằng JavaScript phía trình duyệt, hoặc các trang tải thêm ảnh khi bạn cuộn xuống, phần lớn ảnh sẽ không có trong mã ban đầu và không xuất hiện trong kết quả. Nhóm thiếu thứ hai là ảnh khai báo bằng thuộc tính srcset hoặc bằng thẻ source bên trong thẻ picture, vì công cụ chỉ đọc hai thuộc tính src và data-src. Nhóm thứ ba là ảnh nền đặt bằng CSS, vốn không phải thẻ ảnh nên không thể bắt được. Nhóm thứ tư là ảnh tải trễ khai báo bằng những tên thuộc tính khác như data-lazy-src hay data-original tùy thư viện. Nhóm cuối là ảnh nằm sau đăng nhập hoặc sau tường trả phí, vì dịch vụ trung gian truy cập ẩn danh nên chỉ thấy phần công khai. Nếu nghi ngờ thiếu, hãy so số ảnh tìm được với số thẻ ảnh trong tab phần tử của công cụ dành cho nhà phát triển.
Cách ghép đường dẫn và trường hợp ghép ra địa chỉ sai
Đường dẫn ảnh trong HTML có bốn dạng và công cụ xử lý ba dạng đầu khá đúng. Dạng đầy đủ bắt đầu bằng tên giao thức thì giữ nguyên. Dạng bắt đầu bằng hai dấu gạch chéo được thêm giao thức an toàn vào trước. Dạng bắt đầu bằng một dấu gạch chéo được ghép với phần gốc của tên miền, đây là dạng phổ biến nhất và luôn cho kết quả đúng. Dạng thứ tư là đường dẫn tương đối không mở đầu bằng dấu gạch chéo, ví dụ một tên thư mục rồi tới tên tệp, và ở đây nó bị ghép thẳng vào gốc tên miền. Cách ghép đó chỉ đúng khi trang bạn quét nằm ngay ở gốc; nếu bạn quét một trang nằm sâu trong thư mục con thì địa chỉ tạo ra sẽ trỏ sai chỗ và ảnh hiện lên hỏng rồi bị ẩn khỏi lưới. Công cụ cũng không xét thẻ base nếu trang có khai báo. Dấu hiệu nhận biết rất rõ: số ảnh báo tìm thấy lớn nhưng lưới chỉ hiện ra vài ô. Khi gặp tình huống này, hãy quét trang chủ thay vì trang con, hoặc mở mã nguồn để lấy đường dẫn thủ công.
Tải ảnh về máy: vì sao có ảnh mở tab mới thay vì tải xuống
Nút tải hoạt động bằng cách yêu cầu tệp ảnh rồi dựng tệp ngay trong trình duyệt. Cách này chỉ chạy trót lọt khi máy chủ chứa ảnh cho phép truy cập từ tên miền khác qua tiêu đề chia sẻ tài nguyên. Rất nhiều máy chủ, đặc biệt là mạng phân phối nội dung có bảo vệ chống dẫn nguồn, không cho phép nên yêu cầu bị chặn; lúc đó công cụ chuyển sang phương án dự phòng là mở ảnh ở tab mới để bạn tự lưu bằng chuột phải. Điểm thứ hai cần biết là tên tệp tải về lấy theo nội dung alt của ảnh, hoặc chữ image nếu alt trống, và không kèm phần mở rộng. Bạn sẽ phải tự thêm đuôi jpg, png hay webp cho đúng định dạng thật, nếu không hệ điều hành sẽ không biết mở bằng gì. Với nút tải hàng loạt, mỗi lượt chỉ xử lý hai mươi ảnh đầu tiên và có khoảng nghỉ nửa giây giữa hai tệp; ngay lần thứ hai trình duyệt sẽ hỏi bạn có cho phép trang này tải nhiều tệp không, phải bấm đồng ý thì các ảnh sau mới về.
Tôn trọng robots.txt, điều khoản sử dụng và bản quyền hình ảnh
Trước khi quét một website không phải của mình, hãy mở tệp robots.txt đặt ở gốc tên miền đó và xem đường dẫn bạn định quét có nằm trong mục cấm hay không. Tệp này là quy ước chung mà các bộ thu thập dữ liệu tự nguyện tuân thủ, và công cụ ở đây không tự kiểm tra giúp bạn, nên trách nhiệm là ở người dùng. Kế đó hãy đọc điều khoản sử dụng của trang, nhiều website ghi rõ cấm thu thập dữ liệu tự động, và việc quét bất chấp điều khoản có thể dẫn tới chặn địa chỉ mạng hoặc rắc rối pháp lý. Về bản quyền, mặc định mọi ảnh đăng trên web đều thuộc về tác giả hoặc chủ sở hữu, việc tải về máy để xem là một chuyện, còn đăng lại trên website của bạn, đưa vào ấn phẩm hay dùng cho quảng cáo lại là chuyện khác và cần có giấy phép. Ảnh phát hành theo giấy phép Creative Commons thường vẫn buộc ghi nguồn tác giả. Nguyên tắc an toàn: chỉ tải để tham khảo hoặc để kiểm tra kỹ thuật, còn muốn dùng lại thì xin phép hoặc mua ảnh có giấy phép rõ ràng.
Câu hỏi thường gặp (FAQ)
Công cụ chạy hoàn toàn trên máy tôi hay có gửi dữ liệu đi?
Có gửi đi. Vì quy tắc cùng nguồn gốc chặn việc đọc HTML của tên miền khác, địa chỉ bạn nhập được chuyển tới một dịch vụ trung gian công cộng để dịch vụ đó tải trang giúp. Chỉ phần phân tích thẻ ảnh mới chạy trong trình duyệt. Đừng dán đường dẫn chứa mã phiên hay khóa truy cập.
Vì sao báo lỗi không thể crawl trang dù địa chỉ đúng?
Thường do dịch vụ trung gian đang quá tải, đang giới hạn số lượt, hoặc trang đích chặn truy cập tự động và trả về mã lỗi. Cũng có khi trang yêu cầu đăng nhập. Hãy thử lại sau vài phút, kiểm tra địa chỉ có đủ phần giao thức không, và thử với trang chủ trước để loại trừ nguyên nhân.
Vì sao trang có hàng chục ảnh mà chỉ tìm thấy vài cái?
Công cụ chỉ đọc mã HTML thô, không chạy JavaScript. Website dựng giao diện bằng JavaScript hoặc tải ảnh khi cuộn sẽ giấu phần lớn ảnh khỏi mã ban đầu. Ngoài ra ảnh khai báo bằng srcset, bằng thẻ source trong picture, hoặc đặt làm ảnh nền bằng CSS đều nằm ngoài phạm vi quét.
Ô ảnh hiện trống hoặc biến mất khỏi lưới là do đâu?
Ảnh nào tải hỏng sẽ tự bị ẩn để lưới không bị thủng. Nguyên nhân hay gặp là đường dẫn tương đối bị ghép sai khi bạn quét một trang nằm sâu trong thư mục con, hoặc máy chủ ảnh chặn dẫn nguồn từ tên miền khác. Thử quét trang chủ để đối chiếu.
Bấm tải mà ảnh lại mở ra tab mới, tại sao?
Đó là phương án dự phòng khi máy chủ chứa ảnh không cho phép truy cập từ tên miền khác. Yêu cầu tải bị chặn nên công cụ mở ảnh gốc ra tab mới để bạn tự lưu bằng chuột phải. Trường hợp này rất phổ biến với ảnh đặt trên mạng phân phối nội dung có bảo vệ chống dẫn nguồn.
Vì sao tệp tải về không có phần mở rộng?
Tên tệp được đặt theo nội dung thuộc tính alt của ảnh, hoặc chữ image nếu alt trống, và phần đuôi định dạng không được thêm vào. Bạn cần tự đổi tên và thêm đuôi jpg, png hoặc webp cho đúng, nếu không hệ điều hành sẽ không biết mở tệp bằng phần mềm nào.
Tải tất cả sao chỉ về hai mươi ảnh?
Đó là giới hạn cứng của nút tải hàng loạt, mỗi lượt chỉ xử lý hai mươi ảnh đầu danh sách với khoảng nghỉ nửa giây giữa các tệp. Trình duyệt cũng thường hỏi xác nhận cho phép trang tải nhiều tệp, nếu bạn bỏ qua hộp thoại đó thì các ảnh sau sẽ không về.
Tôi có được phép quét ảnh của bất kỳ website nào không?
Không nên. Hãy xem tệp robots.txt ở gốc tên miền để biết đường dẫn có bị chặn thu thập không, và đọc điều khoản sử dụng vì nhiều website cấm thu thập dữ liệu tự động. Công cụ này không tự kiểm tra hai thứ đó, trách nhiệm thuộc về người dùng.
Tải ảnh về rồi đăng lại trên website của tôi có sao không?
Có thể vi phạm bản quyền. Mặc định ảnh trên web thuộc về tác giả hoặc chủ sở hữu, tải về xem là một chuyện, đăng lại hay dùng cho quảng cáo là chuyện khác. Ảnh theo giấy phép Creative Commons thường vẫn buộc ghi nguồn. An toàn nhất là xin phép hoặc mua ảnh có giấy phép rõ ràng.
Vì sao vài ảnh bị bỏ qua dù rõ ràng có trong mã nguồn?
Công cụ chủ động loại ảnh nhúng trực tiếp dạng data và ảnh có đường dẫn chứa chuỗi 1x1 hoặc pixel, vì đó thường là ảnh đo lường của công cụ thống kê. Bộ lọc theo tên này đôi khi loại nhầm một ảnh thật có tên chứa các chuỗi đó, nên nếu thiếu ảnh cụ thể hãy kiểm tra lại tên tệp.
Dùng công cụ này để soát alt cho SEO có đủ không?
Đủ cho một lần soát nhanh một trang, vì lưới bày đồng thời ảnh và chữ alt nên bạn thấy ngay ảnh nào bỏ trống. Nhưng nó không quét cả website, không đo dung lượng tệp, không kiểm tra định dạng hay kích thước hiển thị. Với kiểm toán đầy đủ, cần công cụ quét toàn site chuyên dụng.
Có lấy được kích thước thật của ảnh không?
Chỉ lấy được khi thẻ ảnh có ghi sẵn hai thuộc tính width và height trong HTML, mà nhiều trang thì không ghi. Muốn biết kích thước thật, hãy bấm nút mở ảnh ở tab mới rồi xem thông tin ảnh, hoặc tải về và kiểm tra bằng trình xem ảnh trên máy.
Từ khóa liên quan
- lấy toàn bộ hình ảnh từ website
- công cụ crawl ảnh online
- tải hàng loạt ảnh từ một trang web
- quét thẻ img của trang
- kiểm tra thuộc tính alt của ảnh
- image crawler online
- trích xuất url hình ảnh
- download ảnh từ url
- robots txt là gì
- quy tắc cùng nguồn gốc cors
- ảnh lazy load không hiện
- srcset và thẻ picture
- bản quyền hình ảnh trên internet
- giấy phép creative commons
- chống dẫn nguồn hotlink
- kiểm kê tài nguyên ảnh website
- audit hình ảnh seo
- lấy link ảnh sản phẩm
- công cụ thu thập dữ liệu web
- crawl hình ảnh miễn phí
