What Is a Browser Agent?
Trình duyệt Scraping không cần Scrapeless cung cấp các phiên trình duyệt được quản lý mà các tác nhân trình duyệt có thể kiểm soát thông qua tự động hóa tiêu chuẩn và các giao diện hướng tác nhân.
Tóm tắt
- Một tác nhân trình duyệt đóng lại vòng lặp nhận thức-hành động trên web. Nó quan sát một trang, chọn một hành động, thực hiện nó thông qua các công cụ duyệt web, đọc trạng thái mới, và dừng lại khi đạt được mục tiêu hoặc ranh giới an toàn.
- Mô hình ngôn ngữ chỉ là một thành phần, không phải toàn bộ tác nhân. Một hệ thống hoạt động cũng cần công cụ, trạng thái, quyền, xử lý lỗi, xác thực và một điều kiện dừng rõ ràng.
- Các tác nhân trình duyệt khác với các kịch bản cố định. Các kịch bản theo các bước được định sẵn; các tác nhân chọn các bước từ trạng thái trang hiện tại và có thể điều chỉnh khi con đường thay đổi.
- Chất lượng quan sát kiểm soát chất lượng hành động. Ảnh chụp màn hình, dữ liệu DOM, cây khả năng truy cập, phản hồi mạng và văn bản đã trích xuất phơi bày các bằng chứng khác nhau và các chế độ lỗi khác nhau.
- Hành động nhạy cảm cần sự chấp thuận rõ ràng. Đọc một trang công khai và gửi thông tin đăng nhập, giao dịch mua hoặc thay đổi tài khoản thuộc về các cấp độ quyền hạn khác nhau.
Định nghĩa tác nhân trình duyệt
Một tác nhân trình duyệt là một hệ thống phần mềm sử dụng trình duyệt như một môi trường hành động. Được xác định một mục tiêu, nó quan sát trang web hiện tại, suy luận về bước tiếp theo, thực hiện một thao tác trình duyệt và kiểm tra kết quả. Chu trình tiếp tục cho đến khi nhiệm vụ hoàn thành, không thể tiếp tục hoặc đạt đến ranh giới chính sách. Tác nhân có thể tìm kiếm, điều hướng, nhấp chuột, gõ, cuộn, trích xuất thông tin, tải xuống một tệp hoặc yêu cầu một người phê duyệt một bước nhạy cảm.
Một ajent trình duyệt rộng hơn một mô hình trò chuyện với nút duyệt. Mô hình đề xuất các quyết định, trong khi ứng dụng xung quanh kiểm soát các công cụ, thông tin xác thực, bộ nhớ, quyền truy cập mạng, các miền được phép, ngân sách, ghi log, và phê duyệt. Nghiên cứu WebArena mô tả các nhiệm vụ web thực tế, có thể tái tạo và đánh giá sự hoàn thành chức năng, điều này là một định nghĩa tốt hơn về hiệu suất của tác nhân so với việc một kế hoạch được tạo ra có nghe có vẻ hợp lý hay không.
Các đại lý trình duyệt cũng khác với các hệ thống tìm kiếm. Tìm kiếm thu thập thông tin ứng viên. Một đại lý trình duyệt có thể theo một kết quả, hiển thị điểm đến, tương tác với trạng thái trang và thu thập bằng chứng từ nhiều trang web khác nhau. Tìm kiếm có thể là một công cụ bên trong đại lý, nhưng tìm kiếm không cung cấp vòng kiểm soát đầy đủ. Sự phân biệt tương tự áp dụng cho các bộ trích xuất: một bộ trích xuất đọc dữ liệu từ một trang, trong khi một đại lý quyết định trang nào và hành động nào nên được thực hiện tiếp theo.
Thuật ngữ này chồng chéo với tác nhân web, tác nhân sử dụng máy tính và tác nhân tự động hóa trình duyệt. Một tác nhân web có thể gọi các API HTTP mà không cần mở trình duyệt hình ảnh. Một tác nhân sử dụng máy tính có thể điều khiển các ứng dụng trên máy tính vượt ra ngoài web. Một tác nhân trình duyệt được định nghĩa bởi môi trường mà nó hoạt động: thẻ trình duyệt, lịch sử duyệt web, nội dung trang, bộ nhớ trình duyệt, tải xuống và tương tác web.
Cách mà một Trình duyệt Hoạt động
Vòng lặp bắt đầu với một mục tiêu và một trạng thái nhiệm vụ có giới hạn. “Tìm ba đặc điểm kỹ thuật chính thức và tóm tắt chúng với các liên kết” cung cấp một hình dạng đầu ra và yêu cầu bằng chứng. “Nghiên cứu chủ đề này” không có điểm kết thúc tự nhiên và khuyến khích duyệt web mở. Điều phối tốt biến mục tiêu thành tiêu chí chấp nhận, giới hạn các lĩnh vực hoặc loại hành động có thể tiếp cận, và ghi lại những bằng chứng nào phải tồn tại trong câu trả lời cuối cùng.
Quan sát chuyển đổi một trang phức tạp thành chứng cứ có thể đọc được bởi mô hình. Một tác nhân hình ảnh có thể nhận các điểm ảnh và các điều khiển được đánh dấu. Một tác nhân ngữ nghĩa có thể nhận các vai trò, tên, văn bản DOM và tham chiếu phần tử có thể truy cập. Một tác nhân hướng dữ liệu có thể kiểm tra một phản hồi mạng hoặc siêu dữ liệu trang được cấu trúc. Thông số kỹ thuật WebDriver của W3C minh họa mô hình lệnh được sử dụng bởi tự động hóa trình duyệt, trong khi các ngăn xếp tác nhân hiện đại thường kết hợp điều khiển cấp giao thức với các quan sát cấp cao hơn.
Lập kế hoạch chọn hành động tiếp theo được phép. Một số hệ thống yêu cầu mô hình thực hiện từng bước một; những hệ thống khác tạo ra một kế hoạch ngắn và sửa đổi nó sau mỗi quan sát. Kiểm soát từng bước dễ dàng hơn để xác minh vì bộ điều khiển có thể kiểm tra từng cú nhấp chuột, mục tiêu và giá trị được đề xuất. Các kế hoạch dài hơn có thể giảm số cuộc gọi mô hình, nhưng chúng trở nên lỗi thời ngay khi một trang thực hiện một nhánh không mong đợi.
Thực thi thay đổi môi trường, và xác minh khép lại vòng lặp. Một cú nhấp chuột thành công không phải là bằng chứng rằng trang dự kiến đã được tải. Đại lý nên kiểm tra URL kết quả, trạng thái hiển thị, hoặc xác nhận có cấu trúc. Một việc gửi biểu mẫu nên được phân biệt với việc điền biểu mẫu, và một giao dịch mua nên được phân biệt với việc đạt được màn hình đánh giá cuối cùng. Sự tách biệt này tạo ra những nơi cho sự phê duyệt của con người.
Tác nhân Trình duyệt vs Kịch bản Tự động hóa Trình duyệt
Cả hai hệ thống điều khiển một trình duyệt, nhưng chúng khác nhau ở cách chọn hành động tiếp theo và mức độ không chắc chắn mà chúng có thể hấp thụ.
| Chiều kích | Nghĩa chính | Sai lầm phổ biến |
|---|---|---|
| Logic điều khiển | Đại lý chọn một hành động từ quan sát hiện tại. | Gọi bất kỳ quy trình duyệt dựa trên mô hình nào là đại lý ngay cả khi từng bước đều được cố định. |
| Thích nghi | Con đường có thể thay đổi khi trạng thái trang hoặc các điều khiển có sẵn thay đổi. | Giả sử việc thích ứng loại bỏ sự cần thiết cho bộ chọn, xác thực hoặc thử nghiệm. |
| Chứng cứ | Đại lý giữ lại các trang nguồn và các chuyển trạng thái hỗ trợ kết quả. | Trả lại một câu trả lời mà không có các trang hoặc quan sát được sử dụng để suy ra nó. |
| Tốt nhất | Biến, nhiệm vụ nhiều bước nơi mà lộ trình không thể được liệt kê một cách rẻ tiền. | Sử dụng một tác nhân cho các hành động hàng loạt ổn định mà một tập lệnh định nghĩa ngắn thực hiện tốt hơn. |
| Rủi ro | Một cách diễn giải sai có thể trở thành một hành động thực sự trên trình duyệt. | Xử lý một lời giải thích trôi chảy như là chứng chứng minh ủy quyền hoặc thực hiện. |
Các trường hợp sử dụng đại lý trình duyệt phổ biến
Các đại lý trình duyệt hữu ích nhất ở những nơi đích đến là tương tác và lộ trình phụ thuộc vào trạng thái trang gặp phải trong quá trình thực hiện nhiệm vụ.
Nghiên cứu có bằng chứng
Đại lý tìm kiếm, mở các nguồn chính, trích xuất các tuyên bố và trả về các liên kết mà người xét duyệt có thể kiểm tra.
Quy trình hoạt động
Đại lý di chuyển qua các bảng điều khiển hoặc biểu mẫu, chuẩn bị các thay đổi và tạm dừng trước khi nộp những thứ quan trọng.
Thu thập dữ liệu web
Đại lý phát hiện phân trang, render nội dung động và cung cấp các hồ sơ có cấu trúc cho một giai đoạn lưu trữ hoặc phân tích.
Đảm bảo chất lượng
Đại lý khám phá các luồng công việc, ghi lại ảnh chụp màn hình và bằng chứng từ bảng điều khiển, và báo cáo nơi hành vi dự kiến khác biệt.
Các Thành phần của một Đại lý Trình duyệt Sản xuất
Hợp đồng công cụ nên được kiểu hóa và thu hẹp. Một công cụ điều hướng cần một URL và một kiểm tra cho phép. Một công cụ nhấp cần một tham chiếu đến yếu tố hiện tại. Một công cụ nhập văn bản cần một mục tiêu và phân loại giá trị để các bí mật nhận được kiểm soát mạnh mẽ hơn. Đặc tả Giao thức Ngữ cảnh Mô hình cung cấp một cách tiêu chuẩn cho các khách hàng và máy chủ mô tả các công cụ callable, nhưng một schema vẫn cần các quyền ở cấp ứng dụng.
Bộ nhớ nên bảo tồn các sự kiện được chấp thuận và trạng thái nhiệm vụ hiện tại mà không biến toàn bộ lịch sử duyệt web thành prompt tiếp theo. Bộ nhớ làm việc có thể giữ mục tiêu hoạt động, URL đã truy cập, sự kiện đã trích xuất và các sự phê duyệt đang chờ. Bộ nhớ bền nên chỉ lưu trữ thông tin mà ứng dụng có lý do và quyền giữ lại.
Lớp trình duyệt cung cấp việc render, phiên, tải xuống, lưu trữ và truy cập giao thức. Một trình duyệt đám mây được quản lý có thể loại bỏ việc bảo trì trình duyệt cục bộ, nhưng nó không quyết định những gì đại lý có thể làm. Hệ thống host nên giữ lại các hạn chế tên miền, ranh giới chứng thực, loại hành động, nhật ký kiểm toán và chính sách phê duyệt bên ngoài prompt mô hình để những quy tắc này không thể bị diễn giải lại như lời khuyên giao tiếp.
Đánh giá cần kiểm tra chức năng. Một nhiệm vụ nghiên cứu đạt yêu cầu khi các sự kiện được yêu cầu được hỗ trợ bởi các nguồn đã được bảo tồn. Một quy trình làm việc của biểu mẫu đạt yêu cầu khi các trường chứa các giá trị mong muốn và hệ thống dừng lại ở ranh giới yêu cầu. Một công cụ scrapper đạt yêu cầu khi schema đầu ra hoàn chỉnh và có thể truy nguyên đến bằng chứng trên trang. Sự tương đồng về hình ảnh hay một câu cuối tự tin không đủ.
Rủi ro và Các chế độ Thất bại
Các trang web chứa các hướng dẫn không đáng tin cậy. Văn bản trên một trang có thể yêu cầu một đại lý bỏ qua nhiệm vụ của nó, tiết lộ dữ liệu hoặc truy cập một miền khác. Bộ điều khiển nên coi nội dung trang như bằng chứng, không bao giờ là chính sách ưu tiên cao hơn. Quyền công cụ, quyền truy cập bí mật và các điểm đến được phép phải được thực thi bên ngoài văn bản mà mô hình đọc.
Trạng thái động tạo ra các vấn đề về thời gian và danh tính. Một bộ tìm kiếm có thể chỉ vào một yếu tố khác sau khi điều hướng hoặc render lại. Một ảnh chụp màn hình cũ có thể mô tả các điều khiển không còn tồn tại. Các tham chiếu tới yếu tố nên hết hạn cùng với quan sát, và các hành động nên được xác thực với URL, khung và trạng thái trang hiện tại. Các hoạt động có tác động cao xứng đáng được ghi lại mới.
Các đại lý cũng có thể lãng phí thời gian trong các vòng lặp. Một ngân sách bước rõ ràng, ngân sách thời gian và điều kiện dừng khiến thất bại trở nên rõ ràng. Hệ thống nên phân biệt “mục tiêu không đạt” với “mục tiêu đạt mà không có bằng chứng” và từ “bị chặn đang chờ phê duyệt.” Những kết quả này dẫn đến các bước tiếp theo khác nhau và không nên bị hợp nhất thành một trường thành công chung.
Quyền riêng tư và ủy quyền áp dụng cho toàn bộ chuỗi. Một đại lý trình duyệt có thể gặp dữ liệu cá nhân, trang đã xác thực, tài liệu đã tải lên hoặc điều khiển thanh toán. Chỉ thu thập những gì nhiệm vụ yêu cầu, xóa các quan sát nhạy cảm trước khi gửi chúng đến một mô hình khi có thể, và không bao giờ suy ra quyền để nộp hoặc tiết lộ chỉ vì trình duyệt có thể truy cập điều khiển.
Cách Đánh giá một Đại lý Trình duyệt
Bắt đầu với việc thành công của nhiệm vụ, nhưng định nghĩa thành công như là một trạng thái có thể kiểm tra từ bên ngoài. Một nhiệm vụ mua sắm có thể hoàn tất ở một màn hình đánh giá, không phải sau khi thanh toán. Một nhiệm vụ nghiên cứu có thể yêu cầu một số lượng nguồn chính cố định. Một nhiệm vụ dữ liệu có thể yêu cầu một schema, các trường nguồn gốc và xử lý trùng lặp. Người đánh giá nên kiểm tra môi trường hoặc hiện vật thay vì hỏi cùng một mô hình xem nó có thành công hay không.
Phân tích kết quả thành nhận thức, quyết định, hành động và xác minh. Nhận thức hỏi liệu kiểm soát hoặc sự kiện cần thiết có hiện diện trong quan sát hay không. Quyết định hỏi liệu bước tiếp theo được chọn có phù hợp với nhiệm vụ hay không. Hành động kiểm tra liệu trình duyệt có thực hiện hoạt động mong muốn hay không. Xác minh kiểm tra liệu trạng thái mới có thỏa mãn điều kiện dự kiến hay không. Sự phân tích này làm cho các thất bại trở nên có thể hành động.
Đo lường chi phí và giám sát nữa. Đếm các bước trình duyệt, gọi mô hình, thời gian tường, các quan sát lặp lại, các sự phê duyệt của con người, và các trạng thái chưa được giải quyết. Một hệ thống hoàn thành nhiệm vụ với nhiều hành động không cần thiết có thể kém phù hợp hơn so với một kịch bản ngắn. Một hệ thống yêu cầu phê duyệt ở các ranh giới rõ ràng có thể an toàn hơn và dễ sử dụng hơn so với một kịch bản theo đuổi tối đa quyền tự chủ.
Sử dụng cả các trang thử nghiệm có thể tái lập và các kiểm tra trang trực tiếp hạn chế. Các môi trường có thể tái lập làm cho các giảm sút có thể so sánh được. Các trang live cho thấy sự biến đổi bố cục, ranh giới xác thực và hành vi render thực, nhưng trạng thái của chúng thay đổi theo thời gian. Lưu trữ định nghĩa nhiệm vụ, viewport, địa phương, mô hình, phiên bản công cụ, và bằng chứng cần thiết để giải thích mỗi kết quả.
Kết luận
Một trình duyệt tác nhân là một vòng lặp được kiểm soát giúp chuyển đổi quan sát web thành các hành động trên trình duyệt. Giá trị của nó đến từ việc thích ứng với trạng thái trang và phối hợp tìm kiếm, điều hướng, tương tác và trích xuất qua một mục tiêu nhiều bước. Mô hình cung cấp lý luận, trong khi ứng dụng cung cấp công cụ, bộ nhớ, chính sách và xác minh.
Các trình duyệt tác nhân đáng tin cậy làm cho sự không chắc chắn trở nên rõ ràng. Chúng bảo tồn bằng chứng, hết hạn những tham chiếu cũ, giới hạn hành động và dừng lại để được chấp thuận trước khi thực hiện những thay đổi quan trọng. Thiết kế đó quan trọng hơn số lần nhấp mà một tác nhân có thể thực hiện mà không cần trợ giúp.
Sẵn sàng xây dựng quy trình làm việc cho trình duyệt tác nhân?
Sử dụng Scrapeless Scraping Browser cho các phiên trình duyệt được quản lý trong khi ứng dụng của bạn giữ quyền kiểm soát lập kế hoạch, bằng chứng và chấp thuận.
Đăng ký hôm nay và nhận $5 tín dụng miễn phí — không cần thẻ tín dụng.
Nhận tín dụng $5 của bạn →Câu hỏi thường gặp
Định nghĩa đơn giản nhất của trình duyệt tác nhân là gì?
Một trình duyệt tác nhân là phần mềm quan sát một trang web, chọn và thực hiện một hành động trên trình duyệt, đánh giá trạng thái mới, và lặp lại cho đến khi đạt được một mục tiêu đã định hoặc điều kiện dừng.
Có phải trình duyệt tác nhân giống như một công cụ lấy dữ liệu web không?
Không. Một công cụ lấy dữ liệu tập trung vào việc trích xuất dữ liệu. Một trình duyệt tác nhân có thể trích xuất, nhưng nó cũng có thể điều hướng, tương tác, so sánh các trạng thái và quyết định hành động hoặc nguồn nào sẽ tiếp theo.
Có cần chụp màn hình cho trình duyệt tác nhân không?
Không. Các tác nhân có thể sử dụng chụp màn hình, dữ liệu DOM, cây truy cập, phản hồi mạng, hoặc các quan sát hỗn hợp. Đại diện tốt nhất phụ thuộc vào trang và nhiệm vụ.
Khi nào một kịch bản cố định thì tốt hơn một tác nhân?
Một kịch bản cố định thường tốt hơn cho các quy trình làm việc ổn định, lặp đi lặp lại, khối lượng lớn với các bước đã biết. Một tác nhân hữu ích khi lộ trình thay đổi và hiểu biết về trang xác định hành động tiếp theo.
Làm thế nào để xử lý các hành động nhạy cảm trên trình duyệt?
Thực thi quyền ngoài mô hình, giữ cho thông tin xác thực được giới hạn, xác thực các mục tiêu so với trạng thái hiện tại, và yêu cầu sự chấp thuận rõ ràng của con người trước khi thực hiện mua sắm, gửi thông tin, thay đổi tài khoản, hoặc tiết lộ thông tin nhạy cảm.