[算表] asp網頁表格無法以excel讀取

看板Office作者 (艾德尚)時間7年前 (2019/01/15 21:50), 編輯推噓1(1057)
留言58則, 4人參與, 7年前最新討論串1/1
軟體:excel 版本:2016 用excel資料匯入的方式抓取asp的資料 https://www7.vghtpe.gov.tw/drugsh/asp/result.asp 好像只能抓出外層 內部資料都無法顯示 想請問版上前輩是否有辦法解決 (或者需要以爬蟲程式才有辦法 感謝解答~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.26.109.8 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1547560200.A.C02.html

01/15 21:59, 7年前 , 1F
如不行的話,就以巨集協助試試
01/15 21:59, 1F

01/15 21:59, 7年前 , 2F
google excel vba ie automation asp|dynamic web
01/15 21:59, 2F

01/15 22:17, 7年前 , 3F
請問該網頁要輸入什麼查的到資料
01/15 22:17, 3F

01/15 22:18, 7年前 , 4F
          才
01/15 22:18, 4F

01/15 22:30, 7年前 , 5F
原文網址是查詢後結果的網址,可按左側重新查詢,回到查詢
01/15 22:30, 5F

01/15 22:30, 7年前 , 6F
01/15 22:30, 6F

01/15 22:39, 7年前 , 7F
目前先一個一個查,來日研究VBA and python~XD
01/15 22:39, 7F

01/15 22:52, 7年前 , 8F
google selenium chrome vba
01/15 22:52, 8F

01/15 22:53, 7年前 , 9F
百度那邊也有資料
01/15 22:53, 9F

01/15 22:54, 7年前 , 10F
還有chrome商店 selenium IDE
01/15 22:54, 10F

01/15 22:55, 7年前 , 11F
你要抓內部 試試看上面這個
01/15 22:55, 11F

01/15 22:57, 7年前 , 12F
Katalon 也可以試試 但這個我沒試過
01/15 22:57, 12F

01/15 22:58, 7年前 , 13F
實作上可以參考水管
01/15 22:58, 13F

01/15 22:59, 7年前 , 14F
但水管上的寫法是比較久一點的版本
01/15 22:59, 14F

01/15 23:00, 7年前 , 15F
要這樣
01/15 23:00, 15F

01/15 23:01, 7年前 , 16F
Dim driver As selenium.ChromeDriver
01/15 23:01, 16F

01/15 23:01, 7年前 , 17F
Sub openWEBchrome()
01/15 23:01, 17F

01/15 23:01, 7年前 , 18F
Set driver = CreateObject("Selenium.ChromeDriver")
01/15 23:01, 18F

01/15 23:02, 7年前 , 19F
url = "https://www.google.com.tw" 要加https://
01/15 23:02, 19F

01/15 23:02, 7年前 , 20F
driver.Get url
01/15 23:02, 20F

01/15 23:03, 7年前 , 21F
driver.Wait 1000
01/15 23:03, 21F

01/15 23:03, 7年前 , 22F
driver.Quit
01/15 23:03, 22F

01/15 23:03, 7年前 , 23F
End Sub
01/15 23:03, 23F

01/15 23:05, 7年前 , 24F
要安裝軟體 安裝chromedrive 執行start chrome
01/15 23:05, 24F

01/15 23:05, 7年前 , 25F
設定引用項目
01/15 23:05, 25F

01/15 23:06, 7年前 , 26F
這個查詢以ie automation來看的話
01/15 23:06, 26F

01/15 23:07, 7年前 , 27F
查詢網頁來看的話,藥品名稱name為DN,國際條碼為"IBC"
01/15 23:07, 27F

01/15 23:07, 7年前 , 28F
健保碼"NHIC",UD碼"UDN",可以document.all、all.item
01/15 23:07, 28F

01/15 23:07, 7年前 , 29F
或documnet.getelementsbyname將value帶入儲存格的值或字
01/15 23:07, 29F

01/15 23:07, 7年前 , 30F
01/15 23:07, 30F

01/15 23:07, 7年前 , 31F
開始搜尋為"btnDO81E0",按下為click
01/15 23:07, 31F

01/15 23:07, 7年前 , 32F
要複製表格的話body.innerhtml指定getelementsbytagname為
01/15 23:07, 32F

01/15 23:07, 7年前 , 33F
table,再以execwb來全選複製於儲存格
01/15 23:07, 33F

01/15 23:08, 7年前 , 34F
以ie的話則不用安裝其他軟體
01/15 23:08, 34F

01/15 23:11, 7年前 , 35F
藥品名稱 name=DN 或 xpath=//input[@name='DN']
01/15 23:11, 35F

01/15 23:12, 7年前 , 36F
國際條碼 name=IBC 或 xpath=//tr[3]/td[2]/input
01/15 23:12, 36F

01/15 23:12, 7年前 , 37F
健保碼 name=NHIC 或 xpath=//tr[4]/td[2]/input
01/15 23:12, 37F

01/15 23:13, 7年前 , 38F
UD碼 name=UDN 或 xpath=//tr[5]/td[2]/input
01/15 23:13, 38F

01/15 23:13, 7年前 , 39F
開始搜尋 name=btnDO81E0
01/15 23:13, 39F

01/15 23:13, 7年前 , 40F
或xpath=//input[@name='btnDO81E0']
01/15 23:13, 40F

01/15 23:14, 7年前 , 41F
重新輸入 name=btnReSet
01/15 23:14, 41F

01/15 23:14, 7年前 , 42F
或xpath=//input[@name='btnReSet']
01/15 23:14, 42F

01/15 23:15, 7年前 , 43F
彈出警告確定 xpath=//input[@name='btnDO81E0']
01/15 23:15, 43F

01/15 23:16, 7年前 , 44F
抱歉 彈出警告確定 不是這個元素
01/15 23:16, 44F

01/15 23:18, 7年前 , 45F
如不抓表格只要表格內的資料的話,split分割outerhtml再抓
01/15 23:18, 45F

01/15 23:18, 7年前 , 46F
01/15 23:18, 46F

01/15 23:19, 7年前 , 47F
彈出警告大概只能靠迴圈搜索新元素物件 沒彈出 sedkey
01/15 23:19, 47F

01/15 23:19, 7年前 , 48F
按下確定來跳開 或者drive.Qiit關閉重開來迴避
01/15 23:19, 48F

01/15 23:20, 7年前 , 49F
sendkey
01/15 23:20, 49F

01/15 23:22, 7年前 , 50F
好像selenium或其他爬蟲有支援python錄製自動寫巨集
01/15 23:22, 50F

01/15 23:22, 7年前 , 51F
的功能
01/15 23:22, 51F

01/15 23:23, 7年前 , 52F
就是你錄製好你的動作,他會直接給你程式碼
01/15 23:23, 52F

01/15 23:23, 7年前 , 53F
然後你再丟到python裡面就能跑了,水管上看有沒有人教
01/15 23:23, 53F

01/15 23:32, 7年前 , 54F
以彈出警告,測試可以execScript "window.alert =
01/15 23:32, 54F

01/15 23:33, 7年前 , 55F
function() {}" 阻止彈出
01/15 23:33, 55F

01/15 23:34, 7年前 , 56F
感謝 原來有這招
01/15 23:34, 56F

01/15 23:38, 7年前 , 57F
感謝神人們,小弟明天就來練練看
01/15 23:38, 57F

01/15 23:44, 7年前 , 58F
文章代碼(AID): #1SFUK8m2 (Office)
文章代碼(AID): #1SFUK8m2 (Office)