Web scraping không phải là một khái niệm mới vì toàn bộ Internet đều dựa trên nó. Ví dụ: khi bạn chia sẻ liên kết của video Youtube trên Facebook, dữ liệu của video đó sẽ bị thu thập để mọi người có thể xem hình thu nhỏ của video trong bài đăng của bạn. Do đó, có vô số cách để sử dụng dữ liệu cạo vì lợi ích của mọi người. Nhưng ở đó
Web scraping không phải là một khái niệm mới vì toàn bộ Internet đều dựa trên nó. Ví dụ: khi bạn chia sẻ liên kết của video Youtube trên Facebook, dữ liệu của video đó sẽ bị thu thập để mọi người có thể xem hình thu nhỏ của video trong bài đăng của bạn. Do đó, có vô số cách để sử dụng dữ liệu cạo vì lợi ích của mọi người. Nhưng có một số khía cạnh đạo đức liên quan đến việc thu thập dữ liệu từ web.
Giả sử bạn đăng ký một chương trình bảo hiểm y tế và bạn sẵn sàng cung cấp thông tin cá nhân của mình cho nhà cung cấp để đổi lấy dịch vụ mà họ cung cấp. Nhưng điều gì sẽ xảy ra nếu một số người lạ thực hiện phép thuật quét web với dữ liệu của bạn và sử dụng nó cho mục đích cá nhân. Mọi thứ có thể bắt đầu trở nên không phù hợp, phải không? Ở đây có nhu cầu thực hành quét web có đạo đức.
Trong bài viết này, chúng ta sẽ thảo luận về quy tắc ứng xử quét web và các cân nhắc về pháp lý và đạo đức.
Để thực hành quét web hợp pháp, bạn cần tuân thủ các quy tắc đơn giản sau.
Đừng phá vỡ Internet - Bạn cần biết rằng không phải tất cả các trang web đều có thể chịu được hàng ngàn yêu cầu mỗi giây. Một số trang web cho phép điều đó, nhưng những trang web khác có thể chặn bạn nếu bạn gửi nhiều yêu cầu bằng cùng một địa chỉ IP. Ví dụ: nếu bạn viết một scraper theo các siêu liên kết, trước tiên bạn nên kiểm tra nó trên một tập dữ liệu nhỏ hơn và đảm bảo nó thực hiện những gì nó phải làm. Hơn nữa, bạn cần điều chỉnh cài đặt của trình cạp để cho phép độ trễ giữa các yêu cầu.
Xem tệp robots.txt - Các trang web sử dụng các tệp robots.txt để cho bot biết liệu trang web có thể được thu thập dữ liệu hay không. Khi trích xuất dữ liệu từ web, bạn cần phải hiểu một cách nghiêm túc và tôn trọng tệp robots.txt để tránh sự phân nhánh pháp lý.
Chia sẻ những gì bạn có thể - Nếu bạn được phép cạo dữ liệu trong miền công cộng và cạo nó, bạn có thể đưa nó ra đó (ví dụ: trên datahub.io) để người khác sử dụng lại. Nếu bạn viết một trình quét web, bạn có thể chia sẻ mã của nó (ví dụ: trên Github) để những người khác có thể hưởng lợi từ nó.
Không chia sẻ nội dung đã tải xuống bất hợp pháp - Đôi khi bạn có thể cạo dữ liệu cho mục đích cá nhân, ngay cả khi thông tin có bản quyền. Tuy nhiên, việc chia sẻ dữ liệu mà bạn không có quyền chia sẻ là bất hợp pháp.
Bạn có thể hỏi một cách độc đáo - Nếu bạn cần dữ liệu từ một tổ chức cụ thể cho dự án của mình, bạn có thể hỏi họ trực tiếp nếu họ có thể cung cấp cho bạn dữ liệu bạn muốn. Nếu không, bạn cũng có thể sử dụng thông tin chính của tổ chức trên trang web của tổ chức và tự cứu mình khỏi những rắc rối khi tạo trình quét web.
Bạn cần ghi nhớ đạo đức dưới đây trong khi thu thập dữ liệu từ web.
Bạn cần biết rằng quét web có thể là bất hợp pháp trong một số trường hợp nhất định. Nếu các điều khoản và điều kiện của trang web mà chúng tôi muốn thu thập cấm người dùng sao chép và tải xuống nội dung, thì chúng tôi không nên cạo dữ liệu đó và tôn trọng các điều khoản của trang web đó.
Bạn có thể cạo dữ liệu không nằm sau hệ thống xác thực được bảo vệ bằng mật khẩu (dữ liệu có sẵn công khai), hãy nhớ rằng bạn không phá vỡ trang web. Tuy nhiên, nó có thể là một vấn đề tiềm ẩn nếu bạn chia sẻ dữ liệu được thu thập thêm nữa. Ví dụ: nếu bạn tải xuống nội dung từ một trang web và đăng nó lên một trang web khác, việc cạo của bạn sẽ bị coi là bất hợp pháp và cấu thành vi phạm bản quyền.
Bất cứ khi nào bạn viết một trình quét web, bạn truy vấn một trang web nhiều lần và có khả năng truy cập số lượng lớn các trang của nó. Đối với mỗi trang, một yêu cầu được gửi đến máy chủ web lưu trữ trang web. Máy chủ xử lý yêu cầu và gửi phản hồi trở lại máy tính chạy mã. Các yêu cầu mà chúng tôi gửi tiêu tốn tài nguyên của máy chủ. Vì vậy, nếu chúng tôi gửi quá nhiều yêu cầu trong một khoảng thời gian ngắn, chúng tôi có thể ngăn những người dùng thông thường khác truy cập trang web trong thời gian đó.
Các tin tặc thường thực hiện các cuộc tấn công từ chối dịch vụ (DoS) để tắt mạng hoặc máy, khiến người dùng dự định không thể truy cập được. Họ làm điều này bằng cách gửi thông tin đến máy chủ gây ra sự cố hoặc bằng cách làm ngập trang web mục tiêu với lưu lượng truy cập.
Hầu hết các máy chủ web hiện đại bao gồm các biện pháp để tránh việc sử dụng bất hợp pháp tài nguyên của họ, vì các cuộc tấn công DoS là phổ biến trên Internet. Họ cảnh giác với số lượng lớn các yêu cầu đến từ một địa chỉ IP duy nhất. Họ có thể chặn địa chỉ đó nếu địa chỉ đó gửi nhiều yêu cầu trong một khoảng thời gian ngắn.
Rất đáng để hỏi người quản lý hoặc chủ sở hữu dữ liệu bạn dự định cạo, tùy thuộc vào phạm vi dự án của bạn. Bạn có thể hỏi họ xem họ có sẵn dữ liệu ở định dạng có cấu trúc có thể phù hợp với nhu cầu dự án của bạn hay không. Nếu bạn muốn sử dụng dữ liệu của họ cho mục đích nghiên cứu theo cách có khả năng khiến họ quan tâm, bạn có thể tự cứu mình khỏi những rắc rối khi viết một trình quét web.
Bạn cũng có thể cứu những người khác khỏi những rắc rối khi viết một trình quét web. Ví dụ: nếu bạn xuất bản dữ liệu hoặc tài liệu của mình như một phần của dự án nghiên cứu, ai đó có thể muốn lấy dữ liệu của bạn để sử dụng. Nếu bạn muốn, bạn có thể cung cấp cho người khác một cách để tải xuống dữ liệu thô của bạn ở định dạng có cấu trúc, do đó tiết kiệm t
Quyền riêng tư dữ liệu và luật bản quyền khác nhau giữa các quốc gia. Bạn cần kiểm tra các luật áp dụng trong ngữ cảnh của mình. Ví dụ: ở các quốc gia như Úc, việc thu thập thông tin cá nhân như số điện thoại, địa chỉ email và tên là bất hợp pháp ngay cả khi chúng có sẵn công khai.
Bạn nên tuân thủ quy tắc ứng xử quét web để thu thập dữ liệu cho mục đích sử dụng cá nhân của bạn. Tuy nhiên, nếu bạn muốn thu thập một lượng lớn dữ liệu cho mục đích thương mại hoặc nghiên cứu, bạn có thể phải tìm kiếm lời khuyên pháp lý.
Bạn biết rằng proxy có rất nhiều ứng dụng. Mục đích chính của họ là ẩn địa chỉ IP và vị trí của người dùng. Proxy cũng cho phép người dùng truy cập nội dung bị giới hạn địa lý khi lướt Internet. Do đó, người dùng có thể truy cập các trang ẩn dưới dạng proxy bỏ qua nội dung và giới hạn địa lý.
Bạn có thể sử dụng proxy để tối đa hóa đầu ra của máy cạp khi chúng giảm tỷ lệ khối. Không có chúng, bạn có thể cạo dữ liệu tối thiểu từ web. Đó là bởi vì proxy vượt qua tốc độ thu thập dữ liệu cho phép nhện trích xuất nhiều dữ liệu hơn. Tốc độ thu thập dữ liệu cho biết số lượng yêu cầu bạn có thể gửi trong một khung thời gian nhất định. Tỷ lệ này khác nhau giữa các trang web.
Bạn có thể chọn proxy tùy thuộc vào yêu cầu dự án của bạn. Bạn có thể sử dụng proxy riêng hoặc proxy dùng chung.
Bạn có thể xác định các nguồn IP ngoài việc chọn proxy cho dự án của mình. Có ba loại máy chủ proxy.
Proxy trung tâm dữ liệu - Đây là những proxy rẻ nhất và thiết thực nhất để quét web. Các IP này được tạo trên các máy chủ độc lập và được sử dụng hiệu quả để thực hiện các dự án cạo quy mô lớn.
Proxy dân cư - Chúng có thể khó có được vì chúng được liên kết với các bên thứ ba.
Proxy di động - Chúng đắt nhất và tuyệt vời để sử dụng nếu bạn phải thu thập dữ liệu chỉ hiển thị trên thiết bị di động.
Cho đến nay, chúng tôi đã thảo luận rằng bạn có thể trích xuất dữ liệu từ Internet bằng cách ghi nhớ các cân nhắc pháp lý và đạo đức. Ví dụ, bạn không nên ăn cắp dữ liệu từ web. Bạn không thể chia sẻ dữ liệu mà bạn không giữ quyền. Nếu bạn cần dữ liệu của một tổ chức cho dự án của mình, bạn có thể hỏi họ liệu họ có thể chia sẻ dữ liệu thô của họ ở định dạng có cấu trúc hay không. Nếu không, bạn có thể viết trình quét web của mình để trích xuất dữ liệu từ trang web nếu họ cho phép. Hơn nữa, chúng tôi đã thảo luận rằng bạn có thể chọn các proxy khác nhau tùy thuộc vào nhu cầu dự án của bạn. Bạn có thể sử dụng trung tâm dữ liệu hoặc IP dân cư vì chúng được sử dụng rộng rãi để quét web.