(不定期更新)使用VBA解決 excel web 查詢無法匯入、匯入太慢的股市資料

ifye wrote:
目前chrome版本是141.0.7390.55
chrome driver版本是141.0.7390.54 (r1509326)
請問這裡driver應該是有相容chrome吧?


我測試是相容的
有時是網頁改版,程式碼無法正確下載,造成chromedriver錯誤







'chrome 141.0.7390.55
'chrome driver 141.0.7390.54 (r1509326) (x64)

Sub chromedrivertest()

Dim chrome As New Selenium.ChromeDriver, UrL As String


UrL = "https://www.mobile01.com/topicdetail.php?f=511&t=4737630&p=156"
chrome.Get UrL
chrome.Wait 10000



chrome.Quit
Set chrome = Nothing

End Sub

S大你好
謝謝你的回覆

請問一下為什麼我加了下面的這一句(目的是要保持網頁是登入的狀態)
就沒辦法正確跑到想要的網址會停留在新分頁

chrome.SetProfile "%USERPROFILE%\AppData\Local\Google\Chrome\User Data", True

按中止以後就會跳出這個錯誤訊息
問了一下chatgpt是說"使用者資料目錄已被占用"
但是加了這一行也沒有用(重開excel前有叫出工作管理員確認詳細資料沒有chrome在執行)

' 步驟 1: 強制關閉所有 Chrome 進程,以釋放預設使用者資料目錄
Shell "taskkill /F /IM chrome.exe", vbHide ' /F 強制結束,/IM 指定 chrome.exe

謝謝










Sub test()

Dim chrome As New Selenium.ChromeDriver

' 步驟 1: 強制關閉所有 Chrome 進程,以釋放預設使用者資料目錄
Shell "taskkill /F /IM chrome.exe", vbHide ' /F 強制結束,/IM 指定 chrome.exe

chrome.SetProfile "%USERPROFILE%\AppData\Local\Google\Chrome\User Data", True
chrome.Get "https://reurl.cc/2LmpVn"
chrome.Wait 5000

Stop

chrome.Quit
Set chrome = Nothing

End Sub
ifye wrote:
就沒辦法正確跑到想要的網址會停留在新分頁


這是chrome(edge)更新後,安全性增強後產生的問題,只有需要維持登入網頁才會
試了beta版的chromedriver,問題還在,不知什麼時候會修復。
花了一點時間,測試出暫時可正常執行的解決方式


步驟如下:
1、關閉chrome (含工作管理員,正在背景執行中的chrome)
2、到user data的路徑,C:\Users\使用者名稱\AppData\Local\Google\Chrome\User Data
3、把user data目錄,複制一份(改名),這裡我暫時用 chromedriver 名稱




4、以系統管理員身份執行 cmd (01發文自動變雙斜線)
start chrome.exe --user-data-dir="C:\\Users\\使用者名稱\\AppData\\Local\\Google\\Chrome\\chromedriver" --profile-directory="Default"





5、接下來chrome會打開,把想要維持登入的網站,全部登入一遍
可以的話,本機不需要驗證(打勾),讓user data更新資料,然後關掉chrome

6、程式碼修改如下,使用另一份user data來執行chrome
Sub test()

Dim Chrome As New Selenium.ChromeDriver

Chrome.AddArgument ("user-data-dir=C:\Users\使用者名稱\AppData\Local\Google\Chrome\chromedriver")

Chrome.Get "https://reurl.cc/2LmpVn"
Stop

Chrome.Wait 3000
Chrome.Quit
Set Chrome = Nothing

End Sub









如果chrome出現驗證身份,第4步重新跑一次


如果不想一直出驗證,也可把chrome捷徑(圖示),
加入第4步,chrome.exe 後面的參數,暫時都用新的user data


ifye
謝謝S大 已正常使用 感謝!!!
文章分享
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 157)

今日熱門文章 網友點擊推薦!