Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 需要多数据爬网方面的帮助吗_Flutter - Fatal编程技术网

Flutter 需要多数据爬网方面的帮助吗

Flutter 需要多数据爬网方面的帮助吗,flutter,Flutter,因为我对颤振爬行还不熟悉,所以我尝试使用电影网站制作一个简单的爬行器。 但即使我做了大量的研究,我仍然不知道如何正确地抓取多个数据。 例如,我想抓取“电影名称”、“发布日期”、“电影海报”,这样我就可以将其作为网格视图 这是我正在努力抓取的网站。 我用过 代码,并对API做了一些研究(颤振腹板刮板) 我不介意使用任何API,以下是我到目前为止的代码 void main() async { String url = "https://movie.daum.net/premovie/n

因为我对颤振爬行还不熟悉,所以我尝试使用电影网站制作一个简单的爬行器。 但即使我做了大量的研究,我仍然不知道如何正确地抓取多个数据。 例如,我想抓取“电影名称”、“发布日期”、“电影海报”,这样我就可以将其作为网格视图

这是我正在努力抓取的网站。

我用过 代码,并对API做了一些研究(颤振腹板刮板

我不介意使用任何API,以下是我到目前为止的代码

void main() async {
String url = "https://movie.daum.net/premovie/netflix?flag=Y";
  List<String> title = List();
  List<String> link = List();
  List<String> date = List();
  List<String> thumbnail = List();
  final response = await http.get(url);
  dom.Document document = parser.parse(response.body);
  final titleValue = document.getElementsByClassName('tit_item');
  final urlValue = document.getElementsByClassName('tit_item');
  final dateValue = document.getElementsByClassName('txt_num');
  final thumbnailValue = document.getElementsByClassName('thumb_item');
  

  title = titleValue
      .map((element) =>
          element.getElementsByTagName("tit_item")[0].attributes['a'])
      .toList();

  link = urlValue
      .map((element) =>
          element.getElementsByTagName("a")[0].attributes['href'])
      .toList();
  date = dateValue
      .map((element) => element.getElementsByTagName("dates")[0].attributes[''])
      .toList();
  thumbnail = thumbnailValue
      .map(
          (element) => element.getElementsByTagName("img")[0].attributes['src'])
      .toList();


  print(title);
  print(link);
  print(date);
  print(thumbnail);

}
void main()异步{
字符串url=”https://movie.daum.net/premovie/netflix?flag=Y";
列表标题=列表();
列表链接=列表();
列表日期=列表();
列表缩略图=列表();
最终响应=等待http.get(url);
documentdocument=parser.parse(response.body);
最终标题值=document.getElementsByClassName('tit_item');
最终urlValue=document.getElementsByClassName('tit_item');
最终日期值=document.getElementsByClassName('txt_num');
final thumbnailValue=document.getElementsByClassName('thumb_item');
标题=标题值
.map((元素)=>
元素。getElementsByTagName(“tit_项”)[0]。属性['a'])
.toList();
链接=URL值
.map((元素)=>
元素。getElementsByTagName(“a”)[0]。属性['href'])
.toList();
日期=日期值
.map((元素)=>element.getElementsByTagName(“日期”)[0]。属性[“”])
.toList();
缩略图=缩略图值
.地图(
(element)=>element.getElementsByTagName(“img”)[0]。属性['src'])
.toList();
印刷品(标题);
打印(链接);
打印(日期);
打印(缩略图);
}
结果,我可以获得链接url、海报url,但无法获得标题和日期

这是我想知道的

  • 下面的代码是如何工作的?特别是从part.map((element)=>

    最终urlValue=document.getElementsByClassName('tit_item'); 链接=URL值 .map((元素)=> 元素。getElementsByTagName(“a”)[0]。属性['href']) .toList()

  • 据我所知,问题是标题和日期没有属性

  • 与海报url相反。(不确定如何命名…)

    在这种情况下我怎么能爬行

  • 除了爬行,我认为我的方法不是存储数据的最佳方法。 如何将其作为一个列表,以便用作“MovieList[0].moviename或MovieList[4].releasedate”
  • 我能得到一些好的见解或想法吗?谢谢