返回列表 上一主題 發帖

[發問] 用Selenium 抓上市行情即時資料 ???

[發問] 用Selenium 抓上市行情即時資料 ???

https://mis.twse.com.tw/stock/gr ... type=all&ind=01
我想抓上市所有類股行情匯入excel  (右下角的頁數抓所有的頁數)
這個網頁好像可以用網頁位址後面的參數抓不同的資料?這要從何處看才能得到想要的資料?
我只看到ind=01==>水泥 各類別的號碼 ,是否有抓全部類別的號碼?,頁數可否一次抓所有??

回復  t8899

chromeDrive的檔案下載網址改了

要改下面那個
'download_url = "https://edgedl.me.gv ...
singo1232001 發表於 2024-2-23 18:38


謝謝告知

TOP

回復 62# t8899

chromeDrive的檔案下載網址改了

要改下面那個
'download_url = "https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/" & version_number & "/win64/chromedriver-win64.zip"
download_url = "https://storage.googleapis.com/chrome-for-testing-public/" & version_number & "/win64/chromedriver-win64.zip"

TOP

[quote]回復  t8899


    一個不算bug的小bug回報 需要注意一下

遇到的狀況
當chrome119版時  但 chromed ...
singo1232001 發表於 2023-11-8 12:08 [/quot
感謝提醒,也謝謝您的指導

TOP

本帖最後由 singo1232001 於 2023-11-8 12:10 編輯

回復 59# t8899


    一個不算bug的小bug回報 需要注意一下

遇到的狀況
當chrome119版時  但 chromedriver 還停留在 118版並沒有更新

原因在於
之前版本不同時 chromedriver會完全無法開啟chrome 並進入updateselenium自動更新程序

但現在版本不同時 "一樣能啟動瀏覽器,但會出現一些網頁元素無法find獲取跟點擊的bug" 例如彈出類型的 或者 javascript類型的 動態生成元素
會無法正確操作

所以我們需要增加一些判斷並 call updateselenium 這段功能  
必須在各位自己寫的主程序中 去新增判斷是否要重新檢查 瀏覽器與插件的版本號
例如:重新開啟次數過多 或者失敗超過幾次 必須 call updateselenium

我目前遇到的是 瀏覽器正常開啟  但某個元素與按鈕點不下去
我增加一些失敗錯誤次數判斷  問題已解決 而之前提供的更新程序 不需要修改

TOP

回復 59# t8899


    1. 可以  或者自己設個PATH3 ,再DIR 做判斷
2.若不影響  那就放著不管他就好 應該是我沒寫刪除ZIP的功能

TOP

回復 52# singo1232001
path1 = "C:\Users\" & Environ$("username") & "\AppData\Local\SeleniumBasic\Chromedriver.exe"
1.我是裝在上面的資料夾?沒抓到?我就把"C:\Users\" & Environ$("username") & "直接換成實際的路徑才抓到 ?
2.下載有成功, 也有解壓縮,但zip檔沒刪除 ?

TOP

回復 57# singo1232001


    有得到正確的資料了:
         時間 =  "資料時間:2023/08/21 14:30"

    非常感恩

TOP

回復 56# Scott090

Driver.Get "https://tw.stock.yahoo.com/quote/1101.TW"

   Do: Set ID0 = Driver.findelementsbyID("main-0-QuoteHeader-Proxy")
        If ID0.Count > 0 Then Exit Do
        Loop
   Do: Set spans = ID0(1).findelementsbytag("span")
        If spans.Count > 0 Then Exit Do
        Loop
    For Each Z In spans
    If Z.Text Like "*盤*更新*" Then
    sp = Split(Z.Text, " ")
    時間 = "資料時間:" & sp(2) & " " & sp(3)
    Exit For
    End If
    Next

TOP

回復 55# singo1232001

  經測試後, 時間變數是空白, 不知問題在哪裡
  請 大大 再看看
  謝謝

TOP

        靜思自在 : 世上有兩件事不能等:一、孝順 二、行善。
返回列表 上一主題