我正在遍历一个网页,我需要来自特定' td'标记:
$ie.Document.getElementsByTagName("td")
我明白了:
className :
id :
tagName : TD
parentElement : System.__ComObject
style : System.__ComObject
onhelp :
onclick :
ondblclick :
onkeydown :
onkeyup :
onkeypress :
onmouseout :
onmouseover :
onmousemove :
onmousedown :
onmouseup :
document : mshtml.HTMLDocumentClass
title :
language :
onselectstart :
sourceIndex : 121
recordNumber :
lang :
offsetLeft : 0
offsetTop : 32
offsetWidth : 42
offsetHeight : 32
offsetParent : System.__ComObject
innerHTML : <span title="" id="jobsForm:jobsTable:0:jobId">886</span>
innerText : 886
outerHTML : <td><span title="" id="jobsForm:jobsTable:0:jobId">886</span></td>
outerText : 886
parentTextEdit : System.__ComObject
isTextEdit : False
filters :
ondragstart :
onbeforeupdate :
onafterupdate :
onerrorupdate :
onrowexit :
onrowenter :
ondatasetchanged :
ondataavailable :
ondatasetcomplete :
onfilterchange :
children : System.__ComObject
all : System.__ComObject
scopeName : HTML
onlosecapture :
onscroll :
ondrag :
ondragend :
ondragenter :
ondragover :
ondragleave :
ondrop :
onbeforecut :
oncut :
onbeforecopy :
oncopy :
onbeforepaste :
onpaste :
currentStyle : System.__ComObject
onpropertychange :
tabIndex : 0
accessKey :
onblur :
onfocus :
onresize :
clientHeight : 31
clientWidth : 42
clientTop : 1
clientLeft : 0
readyState : complete
onreadystatechange :
onrowsdelete :
onrowsinserted :
oncellchange :
dir :
scrollHeight : 31
scrollWidth : 42
scrollTop : 0
scrollLeft : 0
oncontextmenu :
canHaveChildren : True
runtimeStyle : System.__ComObject
behaviorUrns : System.__ComObject
tagUrn :
onbeforeeditfocus :
isMultiLine : True
canHaveHTML : True
onlayoutcomplete :
onpage :
onbeforedeactivate :
contentEditable : inherit
isContentEditable : False
hideFocus : False
disabled : False
isDisabled : False
onmove :
oncontrolselect :
onresizestart :
onresizeend :
onmovestart :
onmoveend :
onmouseenter :
onmouseleave :
onactivate :
ondeactivate :
onmousewheel :
onbeforeactivate :
onfocusin :
onfocusout :
uniqueNumber : 13
uniqueID : ms__id13
nodeType : 1
parentNode : System.__ComObject
childNodes : System.__ComObject
attributes : System.__ComObject
nodeName : TD
nodeValue :
firstChild : System.__ComObject
lastChild : System.__ComObject
previousSibling :
nextSibling : System.__ComObject
ownerDocument : mshtml.HTMLDocumentClass
role :
ariaBusy :
ariaChecked :
ariaDisabled :
ariaExpanded :
ariaHaspopup :
ariaHidden :
ariaInvalid :
ariaMultiselectable :
ariaPressed :
ariaReadonly :
ariaRequired :
ariaSecret :
ariaSelected :
ie8_attributes :
ariaValuenow :
ariaPosinset :
ariaSetsize :
ariaLevel :
ariaValuemin :
ariaValuemax :
ariaControls :
ariaDescribedby :
ariaFlowto :
ariaLabelledby :
ariaActivedescendant :
ariaOwns :
ariaLive :
ariaRelevant :
ie9_tagName :
ie9_nodeName :
onabort :
oncanplay :
oncanplaythrough :
onchange :
ondurationchange :
onemptied :
onended :
onerror :
oninput :
onload :
onloadeddata :
onloadedmetadata :
onloadstart :
onpause :
onplay :
onplaying :
onprogress :
onratechange :
onreset :
onseeked :
onseeking :
onselect :
onstalled :
onsubmit :
onsuspend :
ontimeupdate :
onvolumechange :
onwaiting :
constructor : System.__ComObject
onmspointerdown :
onmspointermove :
onmspointerup :
onmspointerover :
onmspointerout :
onmspointercancel :
onmspointerhover :
onmslostpointercapture :
onmsgotpointercapture :
onmsgesturestart :
onmsgesturechange :
onmsgestureend :
onmsgesturehold :
onmsgesturetap :
onmsgesturedoubletap :
onmsinertiastart :
onmstransitionstart :
onmstransitionend :
onmsanimationstart :
onmsanimationend :
onmsanimationiteration :
oninvalid :
xmsAcceleratorKey :
spellcheck : True
onmsmanipulationstatechanged :
oncuechange :
rowSpan : 1
colSpan : 1
align :
vAlign :
bgColor :
noWrap : False
background :
borderColor :
borderColorLight :
borderColorDark :
width :
height :
cellIndex : 0
abbr :
axis :
ch :
chOff :
headers :
scope :
ie9_ch :
ie9_chOff :
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
该请求返回了86个条目。每当我尝试迭代列表时,我得到的响应要少得多:
$ie.Document.getElementsByTagName("td") | foreach-object {write-output $_.tagName}
TD
TD
TD
TD
TD
TD
TD
TD
TD
TD
TD
TD
TD
TD
所有86个回复的tagName为&#34; TD&#34; (他们必须,这是他们之前从函数调用返回的要求)。由于某些原因,它没有循环遍历getElementsByTagName()调用返回的所有对象,我不明白为什么。我在这里错过了什么吗?如果我将查询存储在变量中的响应对象本身就是一个comobject,所以我不知道是否有特殊的规则:
$whatpage = $ie.Document.getElementsByTagName("td")
$whatpage
System.__ComObject
编辑:这是页面中的html
答案 0 :(得分:1)
你得到的结果是显而易见的行为。如果您观察到TagName属性的值,它肯定会是TD,因为您从getElementsByTagName(&#34; td&#34;)方法获得结果,因此它将返回标记名称为TD的所有元素。
现在,如果您要查找标记内的值(TD或表数据)以从表格单元格中返回值,那么您应该使用$whatpage | %{$_.InnerText}
或$ie.Document.getElementsByTagName("td") | foreach-object {write-output $_.InnerText}
希望有所帮助!