cuốn sách gpt4 ai đã làm

Lệnh tự động thu thập thông tin + trao quyền cho AI

In lại Tác giả: Sahara Thời gian cập nhật: 23-12-2024 20:51:52 58 4
mua khóa gpt4 Nike

Giới thiệu

Người ta ước tính rằng mọi người đều đã biết điều gì về việc thu thập dữ liệu trên web và thu thập dữ liệu và có rất nhiều phần mềm được làm sẵn trên thị trường. trình thu thập thông tin công nghệ để thu thập AV dữ liệu của các trang web và xây dựng liên kết nam châm trang.

Bài viết này sẽ giới thiệu cách mô phỏng các thao tác thủ công và chuyển đổi một số thao tác cố định định nhạt thành quy trình tự động.

tuyên bố

Bài viết này chỉ chia sẻ kinh nghiệm viết script tự động của tôi và không liên quan đến nội dung khác hay bản thân tôi.

!

Để đăng bài một cách chia sẻ, bài viết này sẽ hướng dẫn cách đăng nhập tài khoản Blog Park và ra toàn bộ bình luận. Bao gồm điểm nổi bật:

  • Làm cách nào để bỏ qua mã xác thực khi đăng nhập?
  • Làm cách nào để có được danh sách các nhận xét chưa được SSR hiển thị và yêu cầu xác thực?

Những kỹ thuật lập trình dịch này đều có sẵn và bạn sẽ được hưởng rất nhiều lợi ích từ công việc học của họ Hãy nhớ chúng .

Hướng dẫn

1. Cài đặt gói script tự động hóa

Thêm các gói tham chiếu sau vào dự án tệp:

   

2. Đăng nhập

Sử dụng mã C# sau để đăng nhập:

// Nhập tài khoản IWebElement accountElement = webDriver.FindElement(By.CssSelector("#mat-input-0")); accountElement.SendKeys(account); var element_account = accountElement.GetAttribution("value"); khẩuPhần tử = webDriver.FindElement(By.CssSelector("#mat-input-1")); passElement.SendKeys(password); var element_password = passElement.GetAttribution("value"); chưa xác thực if (account != element_account || pass != element_password) { Xử lý ngoại lệ mới("Tài khoản trang nhập sai mật khẩu ");

3. Bấm vào nút Xác minh

// Nhấn vào nút đăng nhập IWebElement loginBtnElement = webDriver.FindElement(By.CssSelector(@"body > app-root > app-sign-in-layout > div > div > app-sign-in > app-content-container > div > div > div > biểu mẫu > div > nút")); loginBtnElement.Click(); // IWebElement verifyBtnElement = webDriver.FindElement(By.CssSelector(@"#ectMask")); Cần ẩn các tính năng tự động hóa, xem dòng 27 của mã verifyBtnElement.Click();

4. Ba cách lấy ý kiến

Lý do tại sao ba phương pháp được cung cấp là vì một số trang web thực hiện xác minh chống tự động trên giao diện của chính họ, nhưng giao diện của bên thứ ba thường khả thi! .

4.1 Thu thập thông tin qua các thành phần trang

IWebElement tableElement = webDriver.FindElement(By.XPath(@"/html/body/cnb-root/cnb-app-layout/div[2]/as-split/as-split-area[2]/div/div/ cnb-spinner/div/cnb-comment-main/cnb-spinner/div/div[2]/table")); // Trích xuất phần thân bảng IWebElement tbody = tableElement.FindElement(By.TagName("tbody")); IList row = tbody.FindElements(By.TagName("tr")); // Danh sách khởi tạo lưu trữ dữ liệu bảng List< string > tableData = Danh sách mới(); foreach (var row theo hàng) { IList cell = row.FindElements(By.TagName("td")); // Xử lý các ô tiêu đề if (cells.Count == 0) { cell = row.FindElements(By.TagName("th") } List< string> cellTexts = Danh sách mới(); foreach (ô var trong ô) { string cellText = cell.Text.Trim(); } // Sử dụng ký tự ống làm dấu phân cách để tránh xung đột với dấu phẩy trong chuỗi dữ liệu rowData = string.Join(" | ", cellTexts;Add(rowData } // Xuất dữ liệu được trích xuất foreach (var row); trong tableData) { Console.WriteLine(row }

4.2 Yêu cầu trực tiếp việc mua lại giao diện

// Điều hướng đến địa chỉ giao diện webDriver.Navigate().GoToUrl(CnBlogs.CommentsGetApi); var data = webDriver.PageSource Console.WriteLine(data);

4.3 Giả mạo các phần tử HTML và thực thi tập lệnh Tìm nạp để lấy nội dung

webDriver.Navigate().GoToUrl(CnBlogs.CommentsUrl); IJavaScriptExecutor executor = (IJavaScriptExecutor)webDriver; executor.ExecuteScript(@" var container = document.createElement('div'); container.id = 'hiddenDataDiv'; container.style .display = 'không có'; document.body.appendChild(container); tìm nạp('https://i.cnblogs.com/api/feedback/1?mine=false', { headers: { 'accept': 'application/json, text/plain, */*', 'ngôn ngữ chấp nhận': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6', 'ưu tiên': 'u=1, i', 'sec-ch -ua': '\"Microsoft Edge\";v=\"131\", \"Chromium\";v=\"131\", \"Not_A Brand\";v=\"24\"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': '\"Windows\"', 'sec-fetch -dest': 'trống', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin' }, người giới thiệu: 'https://i.cnblogs.com/comments' , giới thiệuPolicy: 'strict-origin-when-cross-origin', phương thức: 'GET', mode: 'cors', thông tin xác thực: 'include' }) .then(response => reply.json()) .then(data = > { document.getElementById('hiddenDataDiv').textContent = JSON.stringify(data }) .catch(error => console.error('Error:', error)); "); chuỗi jsonData = executor.ExecuteScript("return document.getElementById('hiddenDataDiv').textContent;").ToString(); Console.WriteLine(jsonData);

quả trứng Phục sinh nhỏ

Blog Park lỗi đăng nhập.

Ảnh chụp màn hình lỗi đăng nhập

Đăng nhập vào Bug Video để tải về và xem. Trình duyệt không hỗ trợ.

Trao quyền cho AI

Các kịch bản mã xác minh phức tạp có thể được giải quyết thông qua các mô hình đa phương thức AI, chẳng hạn như các yếu tố định vị và di chuyển chuột. Ngoài ra, AI còn có thể được sử dụng để tổ chức và phân tích dữ liệu nhằm nâng cao hiệu quả xử lý dữ liệu.

Link mã nguồn (có thể chạy trực tiếp)

Dự án này được phát triển dựa trên trình duyệt .NET 5 và Edge và mã nguồn đã được tải lên GitHub:

https://github.com/ZhangQueque/CrawlerScript.


Tôi hy vọng blog được tối ưu hóa này sẽ hữu ích cho bạn! Nếu bạn có bất kỳ câu hỏi nào hoặc cần tối ưu hóa thêm, vui lòng liên hệ với chúng tôi bất cứ lúc nào.

Cuối cùng, bài viết về tập lệnh tự động hóa trình thu thập thông tin + trao quyền cho AI kết thúc tại đây. Nếu bạn muốn biết thêm về tập lệnh tự động hóa trình thu thập thông tin + trao quyền cho AI, vui lòng tìm kiếm bài viết CFSDN hoặc tiếp tục duyệt các bài viết liên quan. blog! .

58 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress