Repository navigation
Releases: phuongdev89/facebook_group_post_scraper
Releases · phuongdev89/facebook_group_post_scraper
Release list
1.1.0
[1.1.0] - 2026-09-10
🚀 Tính Năng Mới & Cải Tiến Giao Diện (Added & Enhanced)
- Phân Tích AI Song Song Thời Gian Thực (Real-time AI Pipeline):
- Tiến trình cào bài viết tự động phát tín hiệu kích hoạt
AIAnalysisWorkerphân tích ngay lập tức từng bài khi phát hiện khớp từ khóa mà không cần đợi dừng quét hay chờ hết chu kỳ nghỉ.
- Tiến trình cào bài viết tự động phát tín hiệu kích hoạt
- Tab Dữ Liệu Cào (Tab 2) - Lọc Nhanh Bài Viết Khớp Từ Khóa:
- Bổ sung ô tích chọn 🎯 Chỉ bài khớp từ khóa: Lọc tức thì các bài viết có chứa từ khóa mục tiêu, hiển thị tooltip trích dẫn từ khóa khớp trực tiếp trên ô nội dung.
- Tab Lịch Sử Phân Tích (Tab 3) - Hiển Thị Toàn Bộ Kết Quả & Cột Đánh Giá Mới:
- Hiển thị đầy đủ 100% tất cả các bài viết đã được AI thẩm định (cả bài đúng nhu cầu và bài không phù hợp).
- Thêm cột Kết quả AI với huy hiệu trực quan (
🎯 Đúng nhu cầu/❌ Không phù hợp) cùng dropdown lọc theo trạng thái kết quả.
🐛 Sửa Lỗi (Fixed)
- Khắc phục lỗi bỏ qua so khớp từ khóa khi cài đặt "Cmt tối thiểu = 0": Đã bổ sung logic so khớp từ khóa và kích hoạt hàng đợi phân tích AI ngay lập tức cho riêng nội dung bài viết khi vô hiệu hóa cào bình luận (
min_comments = 0), đảm bảo bộ lọc từ khóa và AI hoạt động chính xác 100% kể cả khi cào ở chế độ lặp vô hạn. - Hỗ trợ tự động Parse chuỗi JSON Mảng cũ: Tự động nhận diện và chuyển đổi các chuỗi từ khóa dạng mảng JSON cũ (như
["giường", "đệm"]) sang dạng biểu thức logic Boolean tiêu chuẩn ("giường" OR "đệm"), ngăn ngừa lỗi parse biểu thức.
1.0.10
[1.0.10] - 2026-09-10
🐛 Sửa Lỗi (Fixed)
- Khắc phục lỗi bỏ qua so khớp từ khóa khi cài đặt "Cmt tối thiểu = 0": Đã bổ sung logic so khớp từ khóa và kích hoạt hàng đợi phân tích AI ngay lập tức cho riêng nội dung bài viết khi vô hiệu hóa cào bình luận (
min_comments = 0), đảm bảo bộ lọc từ khóa và AI hoạt động chính xác 100% kể cả khi cào ở chế độ lặp vô hạn. - Hỗ trợ tự động Parse chuỗi JSON Mảng cũ: Tự động nhận diện và chuyển đổi các chuỗi từ khóa dạng mảng JSON cũ (như
["giường", "đệm"]) sang dạng biểu thức logic Boolean tiêu chuẩn ("giường" OR "đệm"), ngăn ngừa lỗi parse biểu thức.
1.0.9
[1.0.9] - 2026-09-10
🐛 Sửa Lỗi (Fixed)
- Sửa lỗi bộ lọc từ khóa dạng chuỗi: Khắc phục hiện tượng cơ chế tự động chèn toán tử
ANDbị lỗi dẫn đến sai logic khi copy-paste biểu thức trực tiếp vào chế độ Tự nhập biểu thức (Raw Expression), đảm bảo nhận diện chính xác các từ khóa thiếu dấu ngoặc kép nhưsofa. - Tự động kiểm tra cập nhật khi khởi động (OTA Auto-check): Kích hoạt timer tự động kiểm tra bản cập nhật mới từ GitHub sau khi nạp cấu hình lúc mở ứng dụng (nếu đã tích chọn).
- Cải tiến Xuất chẩn đoán gửi cho Dev:
- Xuất dữ liệu SQL dạng Batch INSERT (gộp nhiều dòng/lệnh) thay vì từng dòng đơn lẻ, giảm mạnh dung lượng file SQL.
- Bổ sung cấu trúc bảng
settingsvà toàn bộ các cấu hình bộ lọc từ khóa, prompt AI, tham số cào an toàn vào file dump (chỉ loại trừ tuyệt đối các thông tin tài khoản nhạy cảm: Cookie, Token Telegram, API Key, Proxy).
1.0.8
[1.0.8] - 2026-08-28
🐛 Sửa Lỗi (Fixed)
- Khắc phục lỗi Crash ứng dụng khi Lặp vô hạn (Infinite Loop): Tự động giải phóng bộ nhớ (garbage collection) sau mỗi vòng lặp và xử lý tự khôi phục (auto-backoff) khi gặp sự cố ngẫu nhiên, ngăn chặn tràn bộ nhớ OOM khi chạy thời gian dài.
✨ Tính Năng Mới & Đa Ngôn Ngữ (Added)
- Hệ Thống Đa Ngôn Ngữ Tức Thì (Multilingual i18n - Tiếng Việt 🇻🇳 & English 🇬🇧):
- Tích hợp bộ chuyển đổi ngôn ngữ động với 2 file từ điển JSON chuẩn hóa tại
src/locales/vi.jsonvàsrc/locales/en.json. - Bổ sung 2 nút icon lá cờ (🇻🇳 và 🇬🇧) ở góc trên bên phải thanh tiêu đề: Nhấp để chuyển đổi ngôn ngữ tức thì cho toàn bộ giao diện, bảng dữ liệu, nút tác vụ, hộp thoại cài đặt, cookie và bộ lọc.
- Tự động lưu lựa chọn ngôn ngữ vào SQLite và khôi phục khi mở lại app.
- Xây dựng tài liệu hướng dẫn sử dụng chi tiết song ngữ giao diện web HTML
guides/index.htmlvàguides/en.html.
- Tích hợp bộ chuyển đổi ngôn ngữ động với 2 file từ điển JSON chuẩn hóa tại
- Bộ Lọc Từ Khóa Diễn Giải Đa Ngôn Ngữ:
- Tự động dịch và giải nghĩa biểu thức logic từ khóa sang ngôn ngữ tự nhiên thời gian thực theo ngôn ngữ đang chọn (Tiếng Việt hoặc Tiếng Anh).
1.0.7
[1.0.7] - 2026-08-27
✨ Tính Năng Mới & Kiến Trúc Đa Luồng (Added)
-
Quét Đa Luồng Nhóm Song Song (
Luồng cào: 1-10):- Hỗ trợ chọn số luồng cào nhóm từ 1 đến 10 thông qua Dropdown tinh gọn, cho phép cào đồng thời nhiều nhóm Facebook độc lập với tốc độ vượt trội.
- Tách rời hoàn toàn các tiến trình: Scraper (cào dữ liệu), AI Analyzer (lắng nghe database và phân tích tự động), và Telegram Dispatcher (lắng nghe database và gửi thông báo tức thì).
-
Quy Tắc Thiết Lập Số Lượng Bình Luận Cần Cào (
Cmt tối thiểu):-
0 (Mặc định): Không cào bình luận (chỉ cào bài viết, tốc độ quét nhanh nhất, tiết kiệm băng thông và token). -
-1: Cào TẤT CẢ bình luận và phản hồi của mỗi bài viết. -
> 0 (ví dụ 5, 20...): Cào tối thiểu/tối đa$N$ bình luận cho mỗi bài viết. Nếu bài viết có ít hơn$N$ bình luận thì vẫn cào bài viết đó và lấy toàn bộ bình luận hiện có, không bỏ qua bài viết.
-
-
Bộ Lọc Từ Khóa Logic Chuyên Sâu & Diễn Giải Tiếng Việt (
KeywordFilterDialog):- Hỗ trợ đầy đủ toán tử Boolean
AND,OR,NOTvà biểu thức lồng dấu ngoặc(). - Hộp thoại cấu hình phóng to toàn màn hình với 2 chế độ: 🧱 Dựng điều kiện trực quan (Visual Rule Builder) và ✍️ Tự nhập biểu thức (Raw Expression).
- Hỗ trợ toán tử nối nhóm (
HOẶC (OR),VÀ (AND),VÀ KHÔNG CHỨA (AND NOT)) từ Nhóm 2 trở đi. - Chuyển đổi 2 chiều thông minh, tự động bóc tách toán tử ra khỏi ô nhập text từ khóa và diễn giải ý nghĩa bằng tiếng Việt tự nhiên thời gian thực.
- Hỗ trợ đầy đủ toán tử Boolean
-
Lọc Mốc Thời Gian Bài Viết (Cutoff Timestamp):
- Chọn nhanh 1-7 ngày trước hoặc tùy chỉnh qua DateTimePicker, tự động dừng phân trang khi bài viết vượt quá mốc thời gian yêu cầu.
-
Trợ Giúp Trực Quan (Nút
?Tooltip & Modal Hướng Dẫn):- Bổ sung nút
?cạnh Cmt tối thiểu và Luồng cào giúp người dùng tra cứu nhanh quy tắc và khuyến nghị sử dụng.
- Bổ sung nút
🛠 Cải Tiến Giao Diện & Tối Ưu Diện Tích (Changed)
- Toàn bộ 6 tham số quét (Bài/nhóm, Cmt tối thiểu, Luồng cào, Thời gian, Lặp vô hạn, Nghỉ) được sắp xếp trên 1 hàng ngang duy nhất.
- Bỏ nút mũi tên lên xuống trên các ô số, hỗ trợ nhập số trực tiếp từ bàn phím.
- Thu gọn chiều cao khung nhật ký hoạt động (Logs) xuống còn 1/4, mở rộng tối đa không gian cho Danh sách nhóm Facebook (
GroupListWidget) tự động co giãn theo kích thước cửa sổ.
🐛 Sửa Lỗi (Fixed)
- Sửa lỗi
'NoneType' object has no attribute 'get'trongcomment_scraper.pybằng hàm điều hướng an toàn_safe().
1.0.6
1.0.5
1.0.4
1.0.3
[1.0.3] - 2026-08-20
✨ Tính Năng Mới (Added)
- Tích hợp Nhà cung cấp OpenAI & Tương thích (OpenAI-Compatible Providers):
- Hỗ trợ kết nối tới OpenAI chính hãng và toàn bộ các nền tảng LLM tương thích (OpenRouter, DeepSeek, Groq, Ollama, LM Studio, vLLM, Together AI, v.v.).
- Tự động chuẩn hóa Base URL và endpoint
/chat/completions, tự động xử lý tiền tố và hậu tố URL.
- Bảng Quản Lý Model Checkbox Cho OpenAI (
OpenAIModelSelectorWidget):- Giao diện dạng lưới 2 cột cuộn mượt mà tương tự bộ chọn model Gemini.
- Tự động sắp xếp danh sách model theo thứ tự chữ cái A-Z và gom nhóm các model tư duy (Thinking) về cuối.
- Thanh nhập nhanh
+ Thêm model tùy chỉnhhỗ trợ thêm một hoặc nhiều model cùng lúc (phân tách bằng dấu phẩy). - Nút
🗑 Xóa tất cảdành riêng cho chế độ OpenAI để làm sạch toàn bộ danh sách khi cần. - Các công cụ chọn nhanh: Chọn tất cả, Bỏ chọn.
- Tự Động Tải Danh Sách Model Từ API (
fetch_openai_models_from_api):- Tự động truy vấn endpoint
/modelstừ bất kỳ Base URL nào. - Tự động lọc bỏ các model không phải LLM hội thoại (embeddings, whisper, tts, dall-e, vision, moderation, v.v.).
- Tự động truy vấn endpoint
- Kiểm Tra Thực Tế Bất Đồng Bộ Không Treo Giao Diện (
TestAIModelsWorker):- Chạy trên luồng nền
QThreadriêng biệt, giao diện luôn mượt mà trong suốt quá trình kiểm tra. - Hiệu ứng xoay và tiến trình trực tiếp: Model đang kiểm tra lập tức hiển thị
⏳ model_name (Đang test...)kèm màu tím sáng. - Nút
⏹ Dừng testđộng: Nút bắt đầu test tự động đổi sang màu đỏ⏹ Dừng test (i/N), cho phép người dùng hủy bỏ quá trình kiểm tra bất kỳ lúc nào.
- Chạy trên luồng nền
- Hệ Thống Chỉ Báo Trạng Thái Màu Sắc Trực Quan:
- 🟡 Màu Vàng / Hổ phách (
#D97706): Model mới thêm vào hoặc vừa fetch từ API (Chưa kiểm tra). - 🟣 Màu Tím / Indigo (
#4F46E5): Model đang được kiểm tra trực tiếp. - 🟢 Màu Xanh lá cây (
#047857): Model đã kiểm tra qua API thành công, trả về JSON thuần hợp lệ (hiển thịmodel_name ✓). - 🔴 Màu Đỏ (
#DC2626/#EF4444): Model gặp lỗi API hoặc thuộc dòng Thinking / Reasoner (tự động loại trừ và vô hiệu hóa).
- 🟡 Màu Vàng / Hổ phách (
🛠 Cải Tiến & Tối Ưu (Changed)
- Hỗ Trợ Phản Hồi Server-Sent Events (SSE) Streaming (
extract_chat_completion_response):- Tự động ghép nối các chunk
data: {"id":...}thành chuỗi hoàn chỉnh khi kết nối qua các proxy/gateway có bật SSE Stream. - Luôn gửi kèm
"stream": Falsetrong payload request để ưu tiên nhận JSON trực tiếp.
- Tự động ghép nối các chunk
- Bộ Phân Tích JSON Siêu Bền Bỉ (
parse_json_from_response):- Tự động bóc tách và loại bỏ khối
<think>...</think>/<reasoning>...</reasoning>. - Hỗ trợ khôi phục JSON khi thiếu đóng ngoặc nhọn, xử lý dấu phẩy thừa (trailing commas), chuỗi chứa ký tự xuống dòng chưa escape (
strict=False).
- Tự động bóc tách và loại bỏ khối
- Cơ Chế Fallback Role User: Tự động chuyển đổi từ
role: systemsang gộp vàorole: usernếu model không hỗ trợ system prompt (như một số dòng model o1/o3 hoặc custom proxy).
🐛 Sửa Lỗi (Fixed)
- Sửa lỗi văng
TypeError: verify_single_model_pure_json() unexpected keyword argument 'model'. - Sửa lỗi hiển thị nguyên chuỗi thẻ HTML
<span>và<s>trên văn bản của checkbox Qt. - Sửa lỗi
JSONDecodeError: Line 1khi phản hồi từ proxy bắt đầu bằngdata: {"id":.... - Bổ sung 56 bài kiểm thử tự động (Unit Tests) với độ bao phủ toàn diện từ Core Analyzer, SQLite Repository, Worker Threads đến Giao diện PyQt6.