Rất mong các bạn giúp đỡ 1 lần nữa (về việc lấy dữ liệu chứng khoán trực tuyến) :D

Liên hệ QC
Bh với buổi tối thì nó chạy bằng nhau. Hay bác cho e xin cái bảng reeal time đó trc nhé :D, nếu có vấn đề về thời gian nó cập nhật thì e làm phiền bác sau :p:p:p
Nó không nhảy như web được, hình như sau vài phút nó mới thay đổi, bạn sài đỡ code này xem:
PHP:
Sub a()
Dim hreq As Object, html As Object, tag_table As Object
Dim ncol As Long, nrow As Long
Set hreq = CreateObject("winhttp.winhttprequest.5.1")
Set html = CreateObject("htmlfile")
URL = "https://markets.businessinsider.com/index/realtime-chart/dow_jones"
With hreq
    .Open "GET", URL, False
    .send
    html.body.innerhtml = .responsetext
End With
Set tag_table = html.getelementsbytagname("table")(2)
For nrow = 0 To tag_table.Rows.Length - 1
    For ncol = 0 To tag_table.Rows(1).Cells.Length - 1
        Cells(nrow + 1, ncol + 1) = tag_table.Rows(nrow).Cells(ncol).innertext
    Next
Next
Set hreq = Nothing: Set html = Nothing
Application.OnTime Now() + TimeValue("00:00:30"), "a"
End Sub
 
Nó không nhảy như web được, hình như sau vài phút nó mới thay đổi, bạn sài đỡ code này xem:
PHP:
Sub a()
Dim hreq As Object, html As Object, tag_table As Object
Dim ncol As Long, nrow As Long
Set hreq = CreateObject("winhttp.winhttprequest.5.1")
Set html = CreateObject("htmlfile")
URL = "https://markets.businessinsider.com/index/realtime-chart/dow_jones"
With hreq
    .Open "GET", URL, False
    .send
    html.body.innerhtml = .responsetext
End With
Set tag_table = html.getelementsbytagname("table")(2)
For nrow = 0 To tag_table.Rows.Length - 1
    For ncol = 0 To tag_table.Rows(1).Cells.Length - 1
        Cells(nrow + 1, ncol + 1) = tag_table.Rows(nrow).Cells(ncol).innertext
    Next
Next
Set hreq = Nothing: Set html = Nothing
Application.OnTime Now() + TimeValue("00:00:30"), "a"
End Sub
Lâu vậy ah bác :(, có thể nhanh bằng tốc độ cập nhật trên web ko ạ
 
Có bác nào đi qua thì giúp e với ạ, ko biết tý j luôn :(
 
Muốn nhanh như WEB thì là bất khả kháng, vì WEB đó là nguồn, Muốn cải thiện nữa thì phải liên hệ với Server chính và lấy thông tin (hay họ cung cấp) từ gốc
 
Muốn nhanh như WEB thì là bất khả kháng, vì WEB đó là nguồn, Muốn cải thiện nữa thì phải liên hệ với Server chính và lấy thông tin (hay họ cung cấp) từ gốc
:(, ko có cách nào ah bác, e nghĩ là khi nó đã cập nhật trên web rồi thì sau đó mình có thể cập nhật vào excel dc chứ :(
 
:(, ko có cách nào ah bác, e nghĩ là khi nó đã cập nhật trên web rồi thì sau đó mình có thể cập nhật vào excel dc chứ :(
Nó cập nhập thường xuyên nhưng mã nguồn nó không đổi liền, mấy phút sau nó mới thay đổi, nó dùng websocket để cập nhập dữ liệu và trả về dưới dạng nhị phân để thay đổi trực tiếp trên web chứ không thay đổi mã nguồn, có thể nó chạy javascript nhưng để tìm ra đoạn đó thì chua quá, nếu có thể tìm được thì không chắc đã chạy được , chưa kể còn phải dịch ngược Binary nữa, mấy cái object chỉ để lấy mã nguồn web, nó không đổi thì cũng vậy, chức năng data from web của excel cũng chỉ lấy được như vậy thôi.
 
Nó cập nhập thường xuyên nhưng mã nguồn nó không đổi liền, mấy phút sau nó mới thay đổi, nó dùng websocket để cập nhập dữ liệu và trả về dưới dạng nhị phân để thay đổi trực tiếp trên web chứ không thay đổi mã nguồn, có thể nó chạy javascript nhưng để tìm ra đoạn đó thì chua quá, nếu có thể tìm được thì không chắc đã chạy được , chưa kể còn phải dịch ngược Binary nữa, mấy cái object chỉ để lấy mã nguồn web, nó không đổi thì cũng vậy, chức năng data from web của excel cũng chỉ lấy được như vậy thôi.
:(:(:(:(:( buồn quá ah
 
Lần chỉnh sửa cuối:
Lâu vậy ah bác :(, có thể nhanh bằng tốc độ cập nhật trên web ko ạ
Cái Dow Jones này biết bao nhiêu trang hỗ trợ, biết bao nhiêu ngôn ngữ hỗ trợ, ứng dụng thì khỏi nói. Sao bạn không bước chân vào Ngôn ngữ lập trình thay vì VBA.
Hoặc bạn có thể tìm tải về một ứng dụng lấy dữ liệu chứng khoán nó sẽ xuất ra file cho bạn.
Mục đích của bạn lấy dữ liệu về để tính giao động, lệch, tăng giảm hay để làm gì nhỉ?
Và muốn nhanh thì trang phải hổ trợ API. Và bạn phải dùng Ngôn Ngữ Lập Trình Nodejs / Python / Java / Selenium ...
tìm trang hổ trợ API ngay thôi.
Nếu muốn hiển thị trên màn hình máy tính để nó nhảy lên nhảy xuống, tăng tăng giảm giảm thì dùng Rainmeter.
Cái này nhanh
 
Web KT
Back
Top Bottom