【问题标题】:How to parse a div content with Flutter?如何使用 Flutter 解析 div 内容?
【发布时间】:2021-09-23 09:15:53
【问题描述】:

我有以下 DOM 结构:

<td title="Gardien" class="zentriert rueckennummer bg_Torwart">
  <div class="rn_nummer">30</div>
</td>

我想使用 Dart & Flutter 获取 div 标签的内容(这里是 30)...

我测试了以下代码:

List<String> numeros = [];

final numeross = document.getElementsByTagName("div");
numeros = numeross.map
 ((e) => e.getElementsByClassName("rn_nummer")[0].innerHtml).toList();

但是,我总是出错

E/flutter (6923): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] 未处理异常: RangeError (index): Invalid value: 有效值范围为空: 0

我搜索了很多,但徒劳无功... 有什么建议吗?谢谢

【问题讨论】:

    标签: html flutter dart web-scraping


    【解决方案1】:

    试试这个,我在这里使用html

      var document = parse("""
        <td title="Gardien" class="zentriert rueckennummer bg_Torwart">
            <div class="rn_nummer">30</div>
            <div class="rn_nummer">30</div>
            <div class="rn_nummer">30</div>
         </td>
      """);
    
    
    
      //declaring a list of String to hold all the data.
      List<String> data = document.getElementsByClassName("rn_nummer").map((e) => e.innerHtml).toList();
    
     print(data);
    

    输出:[30,30,30]

    【讨论】:

      猜你喜欢
      • 2021-12-30
      • 1970-01-01
      • 2015-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多