Hầu hết các công cụ OSINT đều lỗi thời nhanh chóng. Internet thay đổi liên tục, các trang web di chuyển điểm cuối, captcha phát triển, và công cụ chết trong vòng hai năm. Maigret là một ngoại lệ. Nó đã hoạt động trong nhiều năm, hỗ trợ hơn 3.000 trang web, cung cấp một gói Python, một bot Telegram và một giao diện người dùng web, và kỹ thuật bên trong nó là một lớp học nhỏ về cách xây dựng một công cụ quét không bị hỏng mỗi khi một trang web thay đổi.
Hướng dẫn này dành cho các kỹ sư, không dành cho việc tra cứu thông thường. Nó sẽ trình bày Maigret làm gì, các trường hợp sử dụng hợp pháp trong nghiên cứu và bảo mật để biện minh cho nó, kiến trúc cho phép nó mở rộng quy mô tới hàng nghìn trang web, và cách các mô hình kiểm thử tương tự mà Maigret sử dụng (cơ sở dữ liệu chữ ký, phát hiện sai lệch, xác minh đệ quy) được áp dụng vào công việc kiểm thử API bạn thực hiện hàng ngày với Apidog.
Nếu bạn chưa đọc, bài viết của chúng tôi về kiểm thử API không cần Postman vào năm 2026 đề cập đến các ý tưởng khớp mẫu và phát hiện sai lệch tương tự trong một lĩnh vực thân thiện hơn.
TÓM TẮT
- Maigret thu thập hồ sơ công khai về một người chỉ bằng tên người dùng, kiểm tra hơn 3.000 trang web để tìm tài khoản và trích xuất thông tin hồ sơ công khai.
- Kỹ thuật này rất ấn tượng: một cơ sở dữ liệu chữ ký trang web được lập phiên bản, tìm kiếm đệ quy, phát hiện sai lệch tự động, bỏ qua captcha và chế độ tóm tắt AI tùy chọn.
- Các trường hợp sử dụng hợp pháp bao gồm điều tra OSINT của các nhà báo, phục hồi tài khoản, tìm kiếm người mất tích, kiểm toán bảo mật và giám sát lạm dụng thương hiệu của công ty.
- Các cuộc tấn công thử nghiệm (red-team engagements) được ủy quyền dựa vào các công cụ như Maigret để lập bản đồ bề mặt tấn công công khai của một tổ chức; việc sử dụng nó trên người mà không có sự đồng ý của họ sẽ vượt qua ranh giới quấy rối và rình rập.
- Các ý tưởng kiến trúc (phát hiện dựa trên chữ ký, xác minh đệ quy, cảnh báo sai lệch tự động) chuyển trực tiếp sang kiểm thử API; chúng tôi sẽ chỉ ra cách áp dụng chúng với Apidog.
- Tải xuống Apidog để thiết kế và kiểm thử các xác nhận kiểu chữ ký trên API của riêng bạn theo cách tương tự mà Maigret kiểm tra các trang web.
Maigret là gì và không phải là gì
Maigret là một công cụ Python, được cấp phép MIT, do soxoj duy trì. Giới thiệu trong README: “thu thập hồ sơ về một người bằng tên người dùng từ hơn 3.000 trang web.” Chạy pip install maigret, cung cấp cho nó một tên người dùng, và nó sẽ truy vấn các trang web trong cơ sở dữ liệu của mình, cạo bất kỳ thông tin hồ sơ công khai nào nằm đằng sau mỗi tài khoản tìm thấy, và tạo ra một báo cáo.

Ba điều cần làm rõ.
Nó chỉ sử dụng dữ liệu công khai. Không đăng nhập, không lạm dụng thông tin đăng nhập, không có khóa API. Nếu một trang web hiển thị hồ sơ cho khách truy cập ẩn danh, Maigret sẽ đọc nó; nếu không, nó sẽ trả về “không tìm thấy tên người dùng” hoặc một trang bị gắn cờ.
Nó được sử dụng rộng rãi trong các bối cảnh nghiên cứu hợp pháp. Các nhà báo tại các cơ quan điều tra lớn, tình nguyện viên tìm kiếm người mất tích, đội ngũ chống gian lận và bảo vệ thương hiệu, và các đội red team được ủy quyền sử dụng nó hàng ngày. README của Maigret tự nó liệt kê các tài liệu tham khảo trong chương trình giảng dạy OSINT học thuật.
Nó có thể bị lạm dụng. Giống như bất kỳ công cụ OSINT nào, việc chạy nó trên một cá nhân mà không có sự đồng ý của họ sẽ vượt qua ranh giới đạo đức và ở nhiều khu vực pháp lý là pháp luật. Luật về hành vi rình rập ở EU, Hoa Kỳ và hầu hết các khu vực khác đều được áp dụng. Hãy đọc các quy tắc địa phương của bạn trước khi nhắm công cụ này vào bất kỳ người nào.
Phần còn lại của bài viết này tập trung vào kỹ thuật và các mô hình kiểm thử có thể chuyển giao, không phải vào quy trình làm việc nhắm mục tiêu con người.
Cơ sở dữ liệu chữ ký trang web
Ý tưởng kỹ thuật tốt nhất trong Maigret là cơ sở dữ liệu chữ ký trang web. Mỗi mục mô tả một trang web với đủ thông tin để công cụ quét có thể quyết định:
- Tên người dùng có tồn tại trên trang web này không?
- Một trang "đã tìm thấy" trông như thế nào?
- Một trang "không tìm thấy" trông như thế nào?
- Chúng ta có thể trích xuất thông tin gì từ một trang đã tìm thấy?
- Trang web này có giới hạn tốc độ (rate-limit) hoặc captcha không?
Cơ sở dữ liệu là JSON, được lập phiên bản trong kho lưu trữ và tự động cập nhật từ GitHub mỗi 24 giờ khi công cụ chạy. Nếu người duy trì cập nhật một chữ ký cho một trang web vừa thay đổi, mọi bản cài đặt Maigret sẽ nhận được bản cập nhật vào ngày hôm sau mà không cần cài đặt lại.
Mô hình này chính xác là những gì bạn muốn cho một bộ kiểm thử API. Dự án của bạn có 50, 500 hoặc 5.000 điểm cuối (endpoints). Mỗi điểm cuối có một chữ ký: mã trạng thái dự kiến, hình dạng phản hồi, phong bì lỗi. Khi một nhà cung cấp thay đổi hình dạng, bạn muốn bộ kiểm thử nhanh chóng thất bại với một sự khác biệt hữu ích. Chúng tôi đã đề cập đến ý tưởng tương tự trong phát triển API ưu tiên hợp đồng và trong sách hướng dẫn kiểm thử máy chủ MCP.
Cách Maigret phát hiện “đã tìm thấy tên người dùng” so với “không tìm thấy”
Một công cụ quét đơn giản thực hiện HTTP GET trên https://example.com/user/<username> và kiểm tra mã trạng thái. Điều đó chỉ hoạt động cho khoảng 10% các trang web thực tế. 90% còn lại trả về 200 với trang “không có người dùng đó”, hoặc 200 với trang chủ đã được lưu vào bộ nhớ cache, hoặc 200 với thử thách captcha.
Cơ sở dữ liệu của Maigret mô tả mỗi trang web với một bộ quy tắc phát hiện phong phú hơn:
- Một mẫu
urlMainvàurl - Một danh sách
presenseStrs(các chuỗi con phải xuất hiện khi người dùng tồn tại) - Một danh sách
absenceStrs(các chuỗi con xác nhận người dùng không tồn tại) - Một regex để trích xuất tên người dùng từ trang
- Các tiêu đề tùy chọn (một số trang web cần một user agent tùy chỉnh)
- Các thẻ cho danh mục và quốc gia
Một phán quyết “đã tìm thấy” yêu cầu tất cả các presenseStrs phải có mặt trong phản hồi và không có absenceStrs nào. Một phán quyết “không tìm thấy” là ngược lại. Bất cứ điều gì khác là một kết quả “không xác định” mà người dùng có thể điều tra thủ công.
Đây là loại xác nhận đa tín hiệu tương tự mà bạn muốn khi kiểm thử các API phức tạp. Mã trạng thái 200 là không đủ; bạn cũng cần xác nhận nội dung phần thân (body). Apidog hỗ trợ cả xác nhận mã trạng thái và nội dung phần thân trong cùng một yêu cầu, đây là tương đương trong kiểm thử API với presenseStrs cộng với absenceStrs của Maigret.
Tìm kiếm đệ quy và trích xuất thông tin
Một khi Maigret tìm thấy một tài khoản, nó thực hiện thêm hai việc.
Nó cạo trang hồ sơ công khai để tìm các định danh bổ sung: địa chỉ email liên kết, số điện thoại, tên thật, các tên người dùng khác. Các quy tắc trích xuất cũng được điều khiển bằng chữ ký, được định nghĩa cho từng trang web. Một hồ sơ LinkedIn cho ra các trường khác với một hồ sơ GitHub.
Sau đó nó đệ quy. Các định danh mới được đưa trở lại vòng lặp tìm kiếm, mở rộng hồ sơ trên các tài khoản được liên kết. Một tên người dùng trên một trang web có thể dẫn đến một tên thật; tên đó có thể mở khóa một tài khoản khác trên một trang web khác; tài khoản đó có thể liên kết đến một tài khoản Instagram; v.v.
Đối với OSINT, đây là sự khác biệt giữa “Tôi tìm thấy một tài khoản Twitter” và “Tôi đã theo dõi người này trên 12 dịch vụ.” Đối với một bộ kiểm thử API, mô hình tương tự là có giá trị: khi bạn phát hiện một trường không được ghi lại trong phản hồi của một điểm cuối, hãy theo dõi nó. Nó thường chỉ ra một điểm cuối liên quan, một hệ thống hạ nguồn hoặc một trường hợp kiểm thử bị thiếu.
Xử lý Captcha và giới hạn tốc độ (rate-limit)
Maigret một phần bỏ qua captcha và phát hiện giới hạn tốc độ bằng cách đọc hình dạng phản hồi. Các chiến lược bỏ qua bao gồm:
- Xoay vòng user agent (tác nhân người dùng)
- Tuân thủ các tiêu đề thử lại (retry headers) theo từng trang web
- Chuyển sang tên miền di động hoặc tên miền đơn giản hóa của trang web
- Định tuyến qua Tor hoặc I2P khi trang web cho phép
README trung thực rằng đây chỉ là một phần. Nếu một trang web có các biện pháp chống tự động hóa mạnh mẽ, Maigret sẽ ghi lại “đã phát hiện captcha” và để người dùng tự điều tra thủ công. Công cụ không cố gắng đánh bại các biện pháp phòng thủ thù địch; nó hoạt động với các trang web cho phép truy cập ẩn danh cơ bản.
Mô hình này có thể chuyển giao: khi bạn xây dựng một client API hoặc công cụ chạy kiểm thử, hãy thiết kế nó để phát hiện các phản hồi giới hạn tốc độ và giảm tải một cách nhẹ nhàng, không phải cố gắng vượt qua chúng bằng bạo lực. Cùng một lập trường phòng thủ giúp Maigret tuân thủ các điều khoản của nhà cung cấp cũng giúp các bài kiểm thử API của bạn tránh bị cấm IP của nhóm.
Vấn đề sai lệch chữ ký
Một cơ sở dữ liệu gồm 3.000 trang web chỉ hữu ích nếu nó luôn được cập nhật. Các trang web thiết kế lại trang hồ sơ, thay đổi mẫu URL, thêm captcha hoặc được mua lại và đổi thương hiệu. Một chữ ký cũ sẽ trả về kết quả âm tính giả (tìm kiếm của bạn không tìm thấy gì) hoặc dương tính giả (nó tìm thấy các tài khoản không tồn tại).
Maigret giải quyết vấn đề này với ba lớp:
- Tự động cập nhật từ kho lưu trữ GitHub trung tâm mỗi 24 giờ
- Các yêu cầu kéo (pull requests) của cộng đồng duy trì chữ ký của từng trang web
- Một cờ
--updatebuộc phải tìm nạp mới - Một bộ kiểm thử tích hợp sẵn để xác thực từng chữ ký với một tên người dùng đã biết tồn tại trước khi phát hành
Mục thứ ba là điều mà hầu hết các đội kỹ thuật thường bỏ qua. Maigret giữ một tên người dùng đã biết tồn tại cho mỗi trang web (thường là nhà phát triển hoặc người duy trì đã đồng ý). Bộ kiểm thử truy vấn tên người dùng đó và xác nhận chữ ký vẫn hoạt động. Phát hiện sai lệch, chữ ký bị gắn cờ, những người đóng góp được thông báo.
Đây chính xác là loại bộ kiểm thử hồi quy bạn muốn cho các hợp đồng API của riêng mình. Apidog hỗ trợ cùng một mô hình: lưu một phản hồi tốt đã biết cho mỗi điểm cuối, phát lại trên điểm cuối trực tiếp theo lịch trình, so sánh kết quả và cảnh báo về sự sai lệch. Hướng dẫn API DeepSeek V4 của chúng tôi bao gồm khía cạnh thủ công của việc này cho một nhà cung cấp cụ thể.
Chế độ tóm tắt AI tùy chọn
Cờ --ai biến các phát hiện thô của Maigret thành một bản tóm tắt điều tra ngắn bằng cách sử dụng điểm cuối LLM tương thích với OpenAI. Bạn cung cấp khóa API; Maigret cấu trúc lời nhắc (prompt) và cuộc gọi.
Đây là một ví dụ tuyệt vời về việc sử dụng LLM làm bộ xử lý hậu kỳ đúng cách. Mô hình không bao giờ quyết định liệu tên người dùng có khớp hay không; điều đó dựa trên quy tắc và có tính xác định. Mô hình chỉ tóm tắt, điều mà nó làm tốt, và nó hoạt động trên một đầu vào bị hạn chế. Các ảo giác (hallucinations) được giới hạn.
Kiến trúc tương tự cũng hoạt động tốt cho việc giám sát API: các xác nhận dựa trên quy tắc xác định trong Apidog, với một bộ xử lý hậu kỳ LLM biến báo cáo chạy thành một bản tóm tắt thân thiện với Slack ở cuối. Bài viết của chúng tôi về sử dụng máy tính so với API có cấu trúc giải thích tại sao lớp cấu trúc luôn phải ưu tiên hàng đầu.
Các trường hợp sử dụng hợp pháp đáng biết
Năm bối cảnh mà việc chạy Maigret là hoàn toàn phù hợp.
Khôi phục tài khoản cho chính bạn. Tìm mọi tài khoản cũ được liên kết với tên người dùng bạn đã sử dụng vào năm 2014. Hữu ích trước khi kiểm toán quyền riêng tư hoặc khi xóa bỏ dấu vết kỹ thuật số.
Giám sát lạm dụng thương hiệu. Các công ty chạy Maigret trên tên thương hiệu hoặc sản phẩm của họ để phát hiện các tài khoản mạo danh. Hầu hết các khu vực pháp lý khuyến khích loại giám sát này; một số yêu cầu bắt buộc.
Công việc tình nguyện tìm người mất tích. Các tổ chức tìm kiếm cứu nạn và tìm người mất tích sử dụng Maigret với sự đồng ý của gia đình để theo dõi dấu vết kỹ thuật số. Luôn phối hợp với cơ quan thực thi pháp luật; làm việc độc lập ở đây thường khiến các cuộc điều tra trở nên khó khăn hơn.
Các cuộc tấn công thử nghiệm (red-team engagements) được ủy quyền. Các đội kiểm thử thâm nhập (pentest teams) theo phạm vi hợp đồng đã ký sử dụng Maigret để lập bản đồ bề mặt tấn công công khai của một tổ chức. Hợp đồng xác định phạm vi; công cụ chỉ là việc triển khai.
Báo chí điều tra. Các phóng viên điều tra gian lận, hành vi sai trái của người của công chúng hoặc tội phạm có tổ chức sử dụng các công cụ OSINT dưới sự xem xét của ban biên tập và pháp lý.
Những điều không có trong danh sách này: tìm kiếm một người lạ vì tò mò, theo dõi một đối tác cũ hoặc xây dựng bộ dữ liệu về những người không đồng ý. Những hành vi đó vượt qua ranh giới pháp lý ở hầu hết các khu vực pháp lý và ranh giới đạo đức ở mọi nơi.
Các mô hình từ Maigret bạn có thể áp dụng cho kiểm thử API
Năm ý tưởng kỹ thuật có thể áp dụng trực tiếp.
Cơ sở dữ liệu chữ ký thay vì kiểm tra được mã hóa thủ công. Định nghĩa hành vi dự kiến của mỗi điểm cuối dưới dạng dữ liệu, không phải mã. Các nhà cung cấp mới được thêm vào mà không cần biên dịch lại.
Xác nhận đa tín hiệu. Mã trạng thái cộng với nội dung phần thân cộng với kiểm tra tiêu đề, tất cả đều bắt buộc. Giảm thiểu dương tính giả từ các phản hồi đã được lưu vào bộ nhớ cache hoặc các trang lỗi chung.
Chữ ký tự động cập nhật. Lấy các xác nhận mới nhất từ một kho lưu trữ trung tâm theo lịch trình. Các dự án Apidog hỗ trợ đồng bộ hóa đám mây; hãy sử dụng nó. Chúng tôi đã đề cập đến quy trình làm việc trong Kiểm thử API không cần Postman.

Phát hiện sai lệch. Lên lịch phát lại định kỳ đối với một fixture (dữ liệu mẫu) đã biết là tốt và so sánh kết quả. Cảnh báo về các thay đổi hình dạng trước khi chúng làm hỏng hệ thống sản xuất.
LLM làm bộ xử lý hậu kỳ, không phải LLM làm trọng tài. Hãy để các quy tắc xác định quyết định đạt/không đạt. Chỉ sử dụng LLM để biến báo cáo thành một thứ dễ đọc.
Áp dụng những điều này và bộ kiểm thử API của bạn sẽ có tuổi thọ tương tự như Maigret. Hầu hết các bộ kiểm thử chết vì chúng được viết một lần, mã hóa thủ công và không bao giờ được cập nhật. Kiến trúc của Maigret là một mô hình cho một công cụ tồn tại lâu dài.
Những cạm bẫy thường gặp khi chạy Maigret
Dành cho các kỹ sư thử nghiệm với chính công cụ này.
Chạy mà không có -a và giả định tính đầy đủ. Mặc định quét 500 trang web hàng đầu theo lưu lượng truy cập. Nếu cuộc điều tra của bạn cần danh sách dài hơn, hãy truyền -a để quét toàn bộ hơn 3.000 trang. Lưu ý rằng việc chạy sẽ mất nhiều thời gian hơn.
Bỏ qua các thẻ. Cờ --tags thu hẹp tìm kiếm theo danh mục hoặc quốc gia. Một người dùng ở Nga hoặc Nhật Bản sẽ bị bỏ qua bởi cài đặt mặc định tập trung vào Hoa Kỳ; lọc theo thẻ sẽ tìm thấy họ.
Bỏ qua tự động cập nhật. Các cơ sở dữ liệu chữ ký cũ tạo ra dương tính giả và âm tính giả. Hãy để tính năng tự động cập nhật chạy, hoặc sử dụng --update thủ công trước các cuộc điều tra nghiêm túc.
Chạy nó trên Tor mà không có sự cho phép từ trang web mục tiêu. Một số trang web chặn các nút thoát Tor; Maigret phát hiện điều này. Đừng diễn giải việc chặn Tor như một tín hiệu về người dùng.
Tin vào các trường được trích xuất mà không xác minh. Công cụ trích xuất những gì trang hiển thị. Các trang có thể bị làm giả. Hãy coi các phát hiện là manh mối, không phải là bằng chứng.
Các trường hợp sử dụng trong thế giới thực
Một công ty tư vấn bảo mật sử dụng Maigret làm bước đầu tiên trong mỗi cuộc tấn công thử nghiệm (red-team scoping engagement). Đầu ra được đưa vào báo cáo khởi động để khách hàng thấy bề mặt tấn công công khai của họ trước khi cuộc tấn công bắt đầu.
Một điều tra viên gian lận tự do sử dụng Maigret với cờ --ai để tóm tắt kết quả quét 3.000 trang web thành một bản tóm tắt 200 từ cho các khách hàng không chuyên về kỹ thuật. Tìm kiếm xác định là dữ liệu; LLM là lớp dễ đọc.
Một đội kỹ thuật sử dụng các ý tưởng kiến trúc tương tự (cơ sở dữ liệu chữ ký, phát hiện sai lệch, phát lại định kỳ) để giữ cho bộ kiểm thử API nội bộ của họ luôn cập nhật trên 200 microservices. Họ đã xây dựng nó trong Apidog; các nguyên tắc này là của Maigret.
Kết luận
Maigret là một ví dụ thực tế về cách xây dựng một công cụ có thể mở rộng quy mô đến hàng nghìn quy tắc phát hiện mà không bị hỏng mỗi khi các bề mặt cơ bản thay đổi. Kỹ thuật này đáng để nghiên cứu ngay cả khi bạn không bao giờ thực hiện một cuộc điều tra OSINT: cơ sở dữ liệu chữ ký, xác nhận đa tín hiệu, dữ liệu tự động cập nhật, phát hiện sai lệch và xử lý hậu kỳ LLM đều có thể chuyển giao cho công việc kiểm thử API bạn làm hàng ngày.
Năm điểm chính:
- Maigret kiểm tra hơn 3.000 trang web để tìm tên người dùng bằng cách sử dụng cơ sở dữ liệu chữ ký được lập phiên bản và tự động cập nhật.
- Phát hiện đa tín hiệu (chuỗi hiện diện cộng với chuỗi vắng mặt) vượt trội hơn so với kiểm tra mã trạng thái đơn giản về độ tin cậy.
- Sai lệch là kẻ thù của bất kỳ bộ kiểm thử nào có tuổi thọ dài; phát lại định kỳ trên các fixture đã biết sẽ phát hiện sớm.
- LLM làm bộ xử lý hậu kỳ (cờ
--ai) là kiến trúc đúng đắn: các quy tắc xác định, đầu ra tóm tắt. - Các mô hình tương tự cũng hoạt động cho kiểm thử API trong Apidog; chúng tôi đã áp dụng chúng trên các bộ hợp đồng của khách hàng.
Bước tiếp theo: đọc định dạng cơ sở dữ liệu trang web của Maigret, sau đó mở Apidog và thiết kế một điểm cuối trong dự án của bạn theo cùng một cách: dựa trên chữ ký, đa tín hiệu, với một fixture đã lưu để phát hiện sai lệch. Sự kỷ luật này sẽ mang lại hiệu quả ngay lần đầu tiên một nhà cung cấp đổi tên một trường vào lúc 2 giờ sáng và bộ kiểm thử của bạn phát hiện ra nó trước khi người dùng kịp nhận ra.
Câu hỏi thường gặp
Sử dụng Maigret có hợp pháp không?
Điều này phụ thuộc vào khu vực pháp lý và đối tượng. Việc chạy nó trên chính bạn, trên các tài khoản bạn sở hữu, trên một công ty mà bạn có ủy quyền bằng văn bản để kiểm thử, hoặc như một phần của hoạt động báo chí được ủy quyền nhìn chung là ổn. Việc chạy nó trên một cá nhân không nghi ngờ có thể vi phạm luật rình rập và quấy rối ở EU, Hoa Kỳ, Vương quốc Anh và hầu hết các khu vực khác. Hãy đọc các quy tắc địa phương của bạn trước khi sử dụng bất kỳ cách nào nhắm mục tiêu vào bên thứ ba.
Maigret có hoạt động mà không cần Python không?
Gói chính thức là Python 3.10+. Tác giả duy trì một bot Telegram để tra cứu thông thường và một thiết lập Cloud Shell cho những người dùng không muốn cài đặt cục bộ.
Tuyên bố 3.000 trang web chính xác đến mức nào?
Cơ sở dữ liệu trang web trong kho lưu trữ liệt kê hơn 3.000 mục; không phải tất cả đều hoạt động tại bất kỳ thời điểm nào. Tính năng tự động cập nhật giữ cho một tập hợp con đang hoạt động luôn được cập nhật. Lọc theo thẻ giúp bạn tập trung vào các trang web có khả năng quan trọng đối với phạm vi của bạn.
Chế độ AI bổ sung điều gì?
Cờ --ai sử dụng một LLM tương thích với OpenAI để tóm tắt các phát hiện xác định thành một báo cáo dễ đọc. Nó không thay đổi chính quá trình tìm kiếm; nó chỉ xử lý hậu kỳ. Hãy mang theo khóa API của riêng bạn.
Tôi có thể sử dụng Maigret trong CI không?
Đối với các cuộc điều tra OSINT thì không; đó là công việc tương tác. Các mô hình kiến trúc mà Maigret sử dụng (cơ sở dữ liệu chữ ký, phát hiện sai lệch, phát lại theo lịch trình) chính xác là những gì thuộc về quy trình CI của bạn để kiểm thử API. Apidog triển khai chúng một cách tự nhiên.
Điều này khác với Sherlock như thế nào?
Sherlock là công cụ tiền thân cũ hơn, đơn giản hơn. Maigret mở rộng nó với tính năng trích xuất thông tin, tìm kiếm đệ quy, xử lý captcha, chế độ tóm tắt AI và một cơ sở dữ liệu trang web phong phú hơn. Cả hai đều được cấp phép MIT và đáng để tìm hiểu.
Tôi báo cáo một chữ ký cũ ở đâu?
README chỉ đến các vấn đề GitHub (GitHub issues) và yêu cầu kéo (pull requests) trên kho lưu trữ Maigret. Đóng góp của cộng đồng giúp cơ sở dữ liệu luôn được cập nhật; một PR cho mỗi trang web lỗi thời là tiêu chuẩn.
