通过Internet Explorer COM查找表数据

时间:2010-02-10 07:56:04

标签: internet-explorer com powershell

我正在尝试通过类似于此article的Powershell / Internet Explorer COM从Web应用程序自动下载某些数据。
这适用于普通元素/下拉,但如果我想点击/找出表格内的链接,如何通过COM对象导航表格?

2 个答案:

答案 0 :(得分:1)

检查此代码:

$ie = New-Object -com InternetExplorer.Application
$tables = @($ie.Document.getElementsByTagName('table'))
# filter out the tables you are not interested in
$tables = filter-tables-somehow $tables
$links = $tables | 
  % { $_.getElementsByTagName('a') } |
  ? { filter-links-somehow $_ }
# and now process the links as you have been doing it so far

您需要过滤掉一些包含您不想下载的链接的表。链接也是如此 - 我想你只想点击一些链接。

对于这种自动化,我建议您查看WatiN(或PowerWatiN)。这可以节省你一些时间。

答案 1 :(得分:0)

它看起来像人们通常在javascript中访问的标准DOM。尝试使用$ doc.getElementsByTagName('TABLE')来获取表的列表。使用foreach或管道来获取各个表格。