Vnstock Logo

Vnstock News thế hệ 5

Mở rộng

Mục lục

Việc theo dõi tin tức tài chính từ nhiều kênh thông tin khác nhau thường làm bạn mất nhiều thời gian chuyển đổi qua lại giữa các trang web. vnstock_news hỗ trợ bạn đơn giản hoá công việc này: sắp xếp danh sách tin mới từ các trang tin bạn chọn vào một bảng pandas.DataFrame trên máy tính của bạn.

Bảng nhận về gồm tiêu đề, tóm tắt, thời gian xuất bản và đường dẫn bài viết, giúp bạn lọc thông tin phục vụ nghiên cứu cá nhân, rồi bấm vào liên kết để đọc bài tại trang gốc.

Điều kiện sử dụng

Thư viện vnstock_news hiện chỉ áp dụng cho người dùng bản Mở rộng thuộc chương trình tài trợ từ cấp Silver trở lên (Silver, Golden, Diamond). Người dùng chưa đăng nhập hoặc thuộc cấp Khách, Cộng đồng và Bronze sẽ nhận thông báo NEWS_TIER_REQUIRED khi gọi hàm.

Phần mềm giúp ích cho bạn như thế nào

  • Theo dõi đa nguồn trong một câu lệnh: Thay vì kiểm tra từng trang web, bạn có thể lấy danh sách tin mới từ các trang tin bạn chọn chỉ với một lời gọi hàm.
  • Lọc tin mới linh hoạt theo thời gian: Dễ dàng lọc các bài viết đăng trong khoảng thời gian mong muốn (ví dụ: trong 2 giờ qua, nửa ngày qua) để cập nhật diễn biến thông tin thị trường theo từng phiên.
  • Chuẩn hoá thời gian theo giờ Việt Nam: Thời gian phát hành được chuẩn hoá theo giờ Việt Nam (UTC+07:00), giúp bạn đối chiếu tin tức đúng theo trình tự diễn biến thực tế.
  • Tôn trọng chỉ dẫn của trang tin: Thư viện tự đọc các chỉ dẫn truy cập trong robots.txt và giãn nhịp yêu cầu ở mức hợp lý để không gây tăng tải cho trang tin.

Trải nghiệm sử dụng ở thế hệ 5

Nhu cầu của bạnBản cũ (2.x)Thế hệ 5 (3.x)
Cách viết mãPhải cấu hình nhiều lớp đối tượng phức tạpHai hàm tinh gọn: fetch_feeder() (lấy danh sách) và fetch_articles() (đọc chi tiết), hoặc tiếp tục dùng các lớp cũ nhờ cơ chế tương thích ngược
Tốc độ phản hồiChờ đợi lâu khi tải nhiều nguồn tinXử lý nhanh hơn khi theo dõi nhiều trang tin cùng lúc
Lọc bài theo giờDễ lọc nhầm bài cũ do sai lệch múi giờLọc chính xác theo đúng mốc thời gian giờ Việt Nam (UTC+07:00)
Cập nhật nguồn tinDễ bị gián đoạn khi website đổi định dạngBản phát hành mới cập nhật theo cấu trúc cấp tin mới của trang tin
Kiểm soát khi có sự cốThông báo lỗi khó hiểu hoặc dữ liệu trả về rỗngBáo rõ nguyên nhân và gợi ý cụ thể hướng xử lý tiếp theo

Bắt đầu trong ba bước

Shell
pip install -U --extra-index-url https://vnstocks.com/api/packages vnstock-news
vnstock register        # Đăng nhập bằng khoá API tài khoản từ cấp Silver trở lên
Python
import vnstock_news

# Xem danh sách các website tin tức được hỗ trợ sẵn
vnstock_news.list_supported_sites()

# 1. Lấy nhanh danh sách 20 tin mới trong 6 giờ qua từ Vietstock (trang này công bố RSS)
df_feed = vnstock_news.fetch_feeder(site_name="vietstock", within="6h", top_n=20)
print(df_feed[["title", "pubDate", "link"]].head())

# 2. Hoặc đọc thông tin từng bài (tiêu đề, tác giả, chuyên mục, thời gian) từ CafeF
df_articles = vnstock_news.fetch_articles(site_name="cafef", top_n=5)
print(df_articles[["title", "author", "category", "publish_time", "url"]])

Tên cột của fetch_feeder() tuỳ loại nguồn: trang công bố RSS cho các cột title, link, description, pubDate; trang chỉ có sơ đồ trang (như CafeF) cho url và lastmod. Bảng đầy đủ ở trang Theo dõi và đọc tin tức.

Khoá API lấy tại trang tài khoản. Chi tiết cài đặt môi trường và các bước đăng nhập có tại trang Cài đặt và xác thực.

Lộ trình tài liệu

Bộ tài liệu được thiết kế ngắn gọn, đi thẳng vào các thao tác thực tế:

BướcTrangMục đích sử dụng
1Cài đặt và xác thựcCài đặt thư viện, đăng nhập khoá Silver+, quản lý hạn dùng
2Theo dõi và đọc tin tứcDùng hàm fetch_feeder() lấy danh sách tin và fetch_articles() đọc chi tiết bài viết
3Danh mục nguồn tinTra cứu các trang tin trong danh mục và xem trước đường dẫn cấp tin
4Tuỳ biến Sitemap và RSSTự khai báo nguồn RSS, sitemap, và tự dựng cấu hình đọc bài từ một bài mẫu cho nghiên cứu cá nhân
5Xử lý lỗi và chính sáchCách kiểm soát lỗi trong mã nguồn và hướng xử lý các trường hợp thường gặp
6Chuyển đổi từ bản cũGiữ nguyên lớp cũ hoặc chuyển đổi sang các hàm thế hệ 5 tinh gọn

Đang có mã viết cho bản cũ

Nếu bạn đang có chương trình chạy với vnstock_news 2.x:

  • Tương thích ngược 1:1: Bạn có thể giữ nguyên mã nguồn cũ và tiếp tục gọi các lớp quen thuộc (Crawler, BatchCrawler, AsyncBatchCrawler, EnhancedNewsCrawler) trực tiếp từ vnstock_news.
  • Rút gọn hơn với hai hàm mới: Khi có nhu cầu tái cấu trúc, bạn có thể chuyển dần sang fetch_feeder() và fetch_articles() để code sáng sủa, đồng bộ và tận dụng tốc độ tối đa của thế hệ 5.
  • Xem bảng đối chiếu mã lệnh chi tiết tại trang Chuyển đổi từ bản cũ.

Giới hạn và lưu ý cho người dùng

  • Tôn trọng bản quyền đơn vị xuất bản: Toàn bộ nội dung bài viết, hình ảnh và quyền tác giả thuộc về đơn vị xuất bản của từng website. Thư viện giúp bạn sắp xếp tiêu đề, tóm tắt và đường dẫn để đọc bài tại trang gốc.
  • Không kèm sẵn cách đọc nội dung bài cho trang nào: Danh mục trang tin trong thư viện không có bộ chọn nội dung (content_selector), nên fetch_articles(site_name=...) luôn để trống cột content. Nếu cần nội dung bài cho nghiên cứu cá nhân, ở trang tin mà điều kiện sử dụng cho phép, bạn tự viết cấu hình theo hướng dẫn Tự dựng cấu hình đọc nội dung từ một bài mẫu. Không đăng lại nội dung bài viết ở nơi khác.
  • Không đưa khuyến nghị đầu tư: Thư viện thuần túy là công cụ hỗ trợ người dùng theo dõi và đối chiếu thông tin, không đưa ra bất kỳ nhận định hay tư vấn mua bán tài chính nào.
  • Tính khả dụng của website nguồn: Khi một trang tin gặp sự cố kỹ thuật hoặc điều chỉnh cấu trúc cấp tin, thư viện sẽ thông báo rõ ràng để bạn nắm được tình trạng thay vì trả về thông tin sai lệch.
  • Giấy phép sử dụng cá nhân: Thư viện phát hành dành riêng cho người tài trợ, phục vụ mục đích nghiên cứu và theo dõi thị trường của cá nhân theo giấy phép sử dụng.