status code : 304 是不是爬不下來 ?
- 帖子
- 41
- 主題
- 8
- 精華
- 0
- 積分
- 64
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE2010
- 閱讀權限
- 20
- 註冊時間
- 2015-3-11
- 最後登錄
- 2020-10-7
|
status code : 304 是不是爬不下來 ?
請教各位
https://www.cac.edu.tw/apply108/system/108ColQry_forapply_3r5k9d/html/108_001562.htm
試了好多種方法,但就是爬不下這個網頁。
發現 一般Headers 的 status code : 200 ,但這個網頁 status code : 304
是否這個因素爬不下來 ? |
|
|
|
|
|
|
暱稱: joey0415
中學生
- 帖子
- 361
- 主題
- 57
- 精華
- 0
- 積分
- 426
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- 2003,2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2010-5-13
- 最後登錄
- 2022-12-8
|
5#
發表於 2019-7-9 09:31
| 只看該作者
回復 4# vanguarx
參考看看
http://white5168.blogspot.com/2012/08/excel-vba-js.html |
|
|
|
|
|
|
- 帖子
- 41
- 主題
- 8
- 精華
- 0
- 積分
- 64
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE2010
- 閱讀權限
- 20
- 註冊時間
- 2015-3-11
- 最後登錄
- 2020-10-7
|
4#
發表於 2019-7-8 10:05
| 只看該作者
想問一個問題,為何 .ExecWB 17,2 這代表 select All ? ExecWB 12,2 這代表 copy selection ?? 不太懂這是哪裡來的
For xi = st To A.Length - 1 Step 1
.Document.body.innerHTML = A(xi).outerHTML
.ExecWB 17, 2 ' Select All
.ExecWB 12,2 ' Copy selection
With shts
.Range("A" & .[A65535].End(xlUp).Row + 1).Select
.PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
End With
.Document.body.innerHTML = xlHtm '還原
Next xi |
|
|
|
|
|
|
- 帖子
- 41
- 主題
- 8
- 精華
- 0
- 積分
- 64
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE2010
- 閱讀權限
- 20
- 註冊時間
- 2015-3-11
- 最後登錄
- 2020-10-7
|
3#
發表於 2019-7-7 15:39
| 只看該作者
太感激了。
Joey 大大還很貼心寫了註解,太受用了。 |
|
|
|
|
|
|
暱稱: joey0415
中學生
- 帖子
- 361
- 主題
- 57
- 精華
- 0
- 積分
- 426
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- 2003,2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2010-5-13
- 最後登錄
- 2022-12-8
|
2#
發表於 2019-7-5 20:56
| 只看該作者
回復 1# vanguarx
的確好幾常用的方法抓不下來,不過
以前超級板主程式式碼修改後
尚可抓取- Sub 放榜()
- Cells.Clear
- Application.ScreenUpdating = False
- With CreateObject("internetexplorer.application")
- surl = "https://www.cac.edu.tw/apply108/system/108ColQry_forapply_3r5k9d/html/108_001562.htm"
- .Visible = True
- .Navigate surl
- Application.Wait Now + TimeValue("00:00:01")
- Do While .ReadyState <> 4 Or .Busy: DoEvents: Loop
-
- Application.Wait Now + TimeValue("00:00:01")
- x = .Document.getElementsByTagName("table").Length
- ' For Z = 0 To x - 1
- ' MsgBox "這??第" & Z & "個表格" & Chr(10) & .Document.getElementsByTagName("table")(Z).innerText
- ' Next
- Set shts = ActiveSheet '
- xlHtm = .Document.body.innerHTML
- Set A = .Document.getElementsByTagName("table")
- For xi = st To A.Length - 1 Step 2
- .Document.body.innerHTML = A(xi).outerHTML
- .ExecWB 17, 2 ' Select All
- .ExecWB 12, 2 ' Copy selection
- With shts
- .Range("A" & .[A65535].End(xlUp).Row + 1).Select
- .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
- End With
- .Document.body.innerHTML = xlHtm '還原
- Next xi
- .Quit
- End With
- Application.ScreenUpdating = True
-
- End Sub
複製代碼 |
|
|
|
|
|
|