在包含框架的网页中搜索字符串

时间:2013-12-03 15:11:37

标签: vbscript

我正在尝试在网页上搜索特定的字符串,我正在使用以下代码:

strPageContent = appIE.document.documentElement.InnerHTML

然而,页面非常复杂并且有很多帧和框架集,并且上面的命令只返回一些父标记的内容。如何访问特定div元素的内容 - 请参阅以下代码:

<html>
<head>...</head>
<frameset id="NavContent_Workhorse" frameborder="0" framespacing="0" rows="*,0">
   <frameset id="Nav_Content" border="3" frameborder="1" framespacing="3" cols="240,*">
     <frame name="nav" src="/interface/sidebar/sidebar.def" scrolling="no">
     <frame name="content" src="/interface/home.def" frameborder="1" border="3" marginheight="0" marginwidth="0" scrolling="no">
        #document
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            <html lang>
                <head> … </head>
                <body onload="LoadAdd();">
                    <div class="PageTitle" id="PageTitle">...</div>
                    <div class="ToolBar" id="PageBody">...</div>
                    <div id="error" class="none"> … </div>
                    <div id="content" style="display: block; height: 445px;">
                      <form id="frmUSR" method="post" target="workhorse" onsubmit="return false;" action="/setup/users_groups/users/insert.sdl?parentid=14">
                        <div id="wiz_1" class="wiz_vis">
                            <table class="frmTbl">
                                <thead class="title">
                                    <tr>
                                        <th class="label">
                                            TEXT THAT I AM LOOKING FOR
                                        </th>

提前致谢!

编辑: 我忘了添加我确实尝试了下面的代码,但我得到一个空值

Set div = appIE.document.getElementById("wiz_1")

编辑2:

该脚本的目的是自动填写我公司系统(网页UI)上的用户创建表单。我不知道为什么,但是我无法引用任何低于主<frameset id="Nav_Content" border="3"的内容。我一直得到空值。

1 个答案:

答案 0 :(得分:1)

您可以在框架内访问具有特定ID的元素的内容,如下所示:

Set frame = appIE.Document.parentWindow.window.frames("content")
Set div = frame.document.getElementById("wiz_1")
WScript.Echo div.innerHTML
WScript.Echo div.innerText