Heim > Web-Frontend > js-Tutorial > Einfacher Implementierungscode für den NodeJs-Crawler zum Abrufen von data_node.js

Einfacher Implementierungscode für den NodeJs-Crawler zum Abrufen von data_node.js

WBOY
Freigeben: 2016-05-16 15:07:33
Original
1753 Leute haben es durchsucht

Das Beispiel in diesem Artikel teilt den Crawler-Datenerfassungscode von nodeJs als Referenz. Der spezifische Inhalt ist wie folgt

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

var http=require('http');

var cheerio=require('cheerio');//页面获取到的数据模块

var url='http://www.jcpeixun.com/lesson/1512/';

function filterData(html){

  /*所要获取到的目标数组

   var courseData=[{

    chapterTitle:"",

    videosData:{

      videoTitle:title,

      videoId:id,

      videoPrice:price

    }

  }] */

  var $=cheerio.load(html);

  var courseData=[];

  var chapters=$(".list-collapse");

  chapters.each(function(item){

    var chapterTitle=$(this).find(".collapse-head").find("label").text();

    var videos=$(this).find(".listview5").children("li");

    var chaptersData={

      chaptersTitle:chapterTitle,

      videosData:[]

    }

    videos.each(function(item){

      var videoTitle=$(this).find(".ml10").attr('data-lesson-name');

      var videoId=$(this).find(".ml10").attr('data-lesson-id');

      var vadeoPrice=$(this).find(".colblue").text();

      chaptersData.videosData.push({

        title:videoTitle,

        id:videoId,

        price:vadeoPrice

      })

    })

    courseData.push(chaptersData)

  })

  return courseData

}

function printCourseInfo(courseData){

  courseData.forEach(function(item){

    console.log(item.chaptersTitle+'\n');

    item.videosData.forEach(function(item){

      console.log(item.title+'【'+item.id+'】'+item.price+'\n')

    })

  })

}

http.get(url,function(res){

  html="";

  res.on("data",function(data){

    html+=data

  })

  res.on('end',function(){

    var courseData=filterData(html);

    printCourseInfo(courseData)

  })

})

Nach dem Login kopieren

Rendering:

Das Obige ist der relevante Code für den NodeJs-Crawler zum Abrufen von Daten. Ich hoffe, er wird für das Lernen aller hilfreich sein.

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage