none
vb使用webbrowser(vb6控件)控件获得网页中表格内容 RRS feed

  • 问题

  • 想通过webbrowser控件,获得网页中存在的一个表格的所有内容,不知道有没有什么简便易行的方法?网页的html代码大致如下:

    <TR>
          <TD vAlign="top" style="HEIGHT: 171px">
           <table cellspacing="0" cellpadding="4" rules="cols" bordercolor="#DEDFDE" border="1" id="DataGrid2" style="color:Black;background-color:White;border-color:#DEDFDE;border-width:1px;border-style:None;width:656px;border-collapse:collapse;">
     <tr style="color:White;background-color:#6B696B;font-weight:bold;">
      <td>学期</td><td>周次</td><td>总分</td>
     </tr><tr style="background-color:#F7F7DE;">
      <td>200801</td><td>20</td><td>135</td>
     </tr><tr style="background-color:White;">
      <td>200801</td><td>19</td><td>135</td>
     </tr><tr style="background-color:#F7F7DE;">
      <td>200802</td><td>19</td><td>162</td>
     </tr><tr style="background-color:White;">
      <td>200801</td><td>18</td><td>138</td>
     </tr><tr style="background-color:#F7F7DE;">
      <td>200802</td><td>18</td><td>106</td>
     </tr><tr style="background-color:White;">
      <td>200801</td><td>17</td><td>138</td>
     </tr><tr style="background-color:#F7F7DE;">
      <td>200802</td><td>17</td><td>106</td>
     </tr><tr style="background-color:White;">
      <td>200802</td><td>16</td><td>118</td>
    (....省略重复)
     </tr>
    </table></TD>
         </TR>
    • 已移动 Sheng Jiang 蒋晟 2009年9月30日 23:46 IE开发问题 (发件人:Visual Basic)
    2009年9月30日 7:07

答案

  • 你可以用GetElementByTagName返回一个表集合,在里面找到你要的表(这个你要仔细研究页面,找出表的唯一标识)。之后可以用GetElementByTagName获得表里面的tr元素,再对每个tr用GetElementByTagName获得TD元素

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年9月30日 23:48

全部回复

  • 你可以用GetElementByTagName返回一个表集合,在里面找到你要的表(这个你要仔细研究页面,找出表的唯一标识)。之后可以用GetElementByTagName获得表里面的tr元素,再对每个tr用GetElementByTagName获得TD元素

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年9月30日 23:48
  • 你可以用GetElementByTagName返回一个表集合,在里面找到你要的表(这个你要仔细研究页面,找出表的唯一标识)。之后可以用GetElementByTagName获得表里面的tr元素,再对每个tr用GetElementByTagName获得TD元素

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP

    你说的表的唯一标识,是不是ID属性呢?
    能不能按照我给出的代码,给个简单的例子让我参考一下呢?
    2009年10月1日 3:00
  • 不是,这个由页面决定,每个页面都不同。ID属性不能保证唯一性。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年10月1日 4:34
  • 不是,这个由页面决定,每个页面都不同。ID属性不能保证唯一性。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP

    我所要获取的仅仅是这个一个页面的内容,这个页面是个查询页面,输入完指定信息后,单击按钮会列出来一系列数据(已经使用webbrowser完成),现在只是怎么获得网页动态生成出来的表格内容,
    2009年10月1日 5:08
  • 我的意思是你要自己分析页面。每个页面都不一样,所以别人不太可能会有分析过你这个页面的经验。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年10月1日 6:13