→ soyoso: 如不行的話,就以巨集協助試試 01/15 21:59
→ soyoso: google excel vba ie automation asp|dynamic web 01/15 21:59
→ shengvia: 請問該網頁要輸入什麼查的到資料 01/15 22:17
→ shengvia: 才 01/15 22:18
→ soyoso: 原文網址是查詢後結果的網址,可按左側重新查詢,回到查詢 01/15 22:30
→ soyoso: 頁 01/15 22:30
→ endoxans: 目前先一個一個查,來日研究VBA and python~XD 01/15 22:39
推 waiter337: google selenium chrome vba 01/15 22:52
→ waiter337: 百度那邊也有資料 01/15 22:53
→ waiter337: 還有chrome商店 selenium IDE 01/15 22:54
→ waiter337: 你要抓內部 試試看上面這個 01/15 22:55
→ waiter337: Katalon 也可以試試 但這個我沒試過 01/15 22:57
→ waiter337: 實作上可以參考水管 01/15 22:58
→ waiter337: 但水管上的寫法是比較久一點的版本 01/15 22:59
→ waiter337: 要這樣 01/15 23:00
→ waiter337: Dim driver As selenium.ChromeDriver 01/15 23:01
→ waiter337: Sub openWEBchrome() 01/15 23:01
→ waiter337: Set driver = CreateObject("Selenium.ChromeDriver") 01/15 23:01
→ waiter337: driver.Get url 01/15 23:02
→ waiter337: driver.Wait 1000 01/15 23:03
→ waiter337: driver.Quit 01/15 23:03
→ waiter337: End Sub 01/15 23:03
→ waiter337: 要安裝軟體 安裝chromedrive 執行start chrome 01/15 23:05
→ waiter337: 設定引用項目 01/15 23:05
→ soyoso: 這個查詢以ie automation來看的話 01/15 23:06
→ soyoso: 查詢網頁來看的話,藥品名稱name為DN,國際條碼為"IBC" 01/15 23:07
→ soyoso: 健保碼"NHIC",UD碼"UDN",可以document.all、all.item 01/15 23:07
→ soyoso: 或documnet.getelementsbyname將value帶入儲存格的值或字 01/15 23:07
→ soyoso: 串 01/15 23:07
→ soyoso: 開始搜尋為"btnDO81E0",按下為click 01/15 23:07
→ soyoso: 要複製表格的話body.innerhtml指定getelementsbytagname為 01/15 23:07
→ soyoso: table,再以execwb來全選複製於儲存格 01/15 23:07
→ soyoso: 以ie的話則不用安裝其他軟體 01/15 23:08
→ waiter337: 藥品名稱 name=DN 或 xpath=//input[@name='DN'] 01/15 23:11
→ waiter337: 國際條碼 name=IBC 或 xpath=//tr[3]/td[2]/input 01/15 23:12
→ waiter337: 健保碼 name=NHIC 或 xpath=//tr[4]/td[2]/input 01/15 23:12
→ waiter337: UD碼 name=UDN 或 xpath=//tr[5]/td[2]/input 01/15 23:13
→ waiter337: 開始搜尋 name=btnDO81E0 01/15 23:13
→ waiter337: 或xpath=//input[@name='btnDO81E0'] 01/15 23:13
→ waiter337: 重新輸入 name=btnReSet 01/15 23:14
→ waiter337: 或xpath=//input[@name='btnReSet'] 01/15 23:14
→ waiter337: 彈出警告確定 xpath=//input[@name='btnDO81E0'] 01/15 23:15
→ waiter337: 抱歉 彈出警告確定 不是這個元素 01/15 23:16
→ soyoso: 如不抓表格只要表格內的資料的話,split分割outerhtml再抓 01/15 23:18
→ soyoso: 出 01/15 23:18
→ waiter337: 彈出警告大概只能靠迴圈搜索新元素物件 沒彈出 sedkey 01/15 23:19
→ waiter337: 按下確定來跳開 或者drive.Qiit關閉重開來迴避 01/15 23:19
→ waiter337: sendkey 01/15 23:20
→ waiter337: 好像selenium或其他爬蟲有支援python錄製自動寫巨集 01/15 23:22
→ waiter337: 的功能 01/15 23:22
→ waiter337: 就是你錄製好你的動作,他會直接給你程式碼 01/15 23:23
→ waiter337: 然後你再丟到python裡面就能跑了,水管上看有沒有人教 01/15 23:23
→ soyoso: 以彈出警告,測試可以execScript "window.alert = 01/15 23:32
→ soyoso: function() {}" 阻止彈出 01/15 23:33
→ waiter337: 感謝 原來有這招 01/15 23:34
→ endoxans: 感謝神人們,小弟明天就來練練看 01/15 23:38