作者Metal5566 (咩陀56)
看板Visual_Basic
标题[VBA] Internetexplorer.document.innertext
时间Sun Sep 11 14:35:32 2016
※ [本文转录自 Office 看板 #1NrFgTDP ]
作者: Metal5566 (咩陀56) 看板: Office
标题: [问题] Internetexplorer.document.innertext
时间: Sun Sep 11 14:32:58 2016
(若是和其他不同软体互动之问题 请记得一并填写)
软体:
版本:excel office 2010
已新增内容
http://imgur.com/a/oGFYj 这是有问题的CODE和结果
网页是
http://www.oddsportal.com/
然後进去赛事的页面 有电视图示的就是SCRIPT所在
http://imgur.com/a/vNo3q 如图
我有问到是说 innertext 是把其下标签的innertext也算
所以TABLE标签或甚麽的里面会有SCRIPT标签的INNERTEXT
想知道怎麽避免不要抓到那段SCRIPT
有用excel在网路抓取资料的需求,在网路上找的了这段code,但是把所有标签抓下来之後在innertext 储存格内会有script
另外有找到也是别人的档案,code大同小异但他的innertext内就不会有script
vba是看书自学的,网页相关的知识也比较薄弱,想请问一下为什麽会这样,要怎麽解决
谢谢
作者:黄晨
链接:
https://www.zhihu.com/question/20460385/answer/71447219
来源:知乎
着作权归作者所有,转载请联系作者获得授权。
Sub getPageInfo()
With CreateObject("internetexplorer.application")
.Visible = True
.Navigate [URL]
While .ReadyState <> 4 Or .Busy
DoEvents
Wend
Set dmt = .Document
For i = 0 To dmt.all.Length - 1
Set htMent = dmt.all(i)
With ActiveSheet
.Cells(i + 2, "A") = htMent.tagName
.Cells(i + 2, "B") = TypeName(htMent)
.Cells(i + 2, "C") = htMent.ID
.Cells(i + 2, "D") = htMent.Name
.Cells(i + 2, "E") = htMent.Value
.Cells(i + 2, "F") = htMent.Text
.Cells(i + 2, "G") = htMent.innerText
End With
Next i
Set r = Nothing
.Quit
End With
MsgBox "获取页面信息成功!"
End Sub
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.51.169.144
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1473575581.A.359.html
※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: Metal5566 (123.51.169.144), 09/11/2016 14:35:32
※ 编辑: Metal5566 (123.51.169.144), 09/11/2016 14:36:22
※ 编辑: Metal5566 (123.51.169.144), 09/12/2016 07:56:49