zoukankan      html  css  js  c++  java
  • .net 使用HtmlAgilityPack做爬虫

    HtmlAgilityPack官网:https://html-agility-pack.net/?z=codeplex

    .net中使用HtmlAgilityPack做爬虫步骤:

    1、在nuget中安装HtmlAgilityPack

    安装好之后我们就可以开始我们的爬虫之旅了

    2、抓取网页源代码

    1 var web = new HtmlWeb();
    2 var doc = web.Load("要抓取的网页链接");
    View Code

    至此,我们就得到了网页的源代码了,然后用HtmlDocument来操作

    还有一些特殊性质的需要填装验证数据的抓取,我们可以通过HttpWebRequest或者HttpClient来获取网页源代码

    1 var htmlTxt =获取html的string的方法;
    2 var doc = new HtmlDocument();
    3 doc.LoadHtml(htmlTxt);
    View Code

    3、进行数据筛选清洗

    举个栗子:

    我们现在抓取电影天堂的数据:https://www.dytt8.net

    我们先抓取他的分类,我们打开https://www.dytt8.net  然后右键查看源代码,发现分类处于div  class 为contain中,这样我们就好办了

    直接用HtmlDocument获取 class为contain的所有a标签

     1 var list =doc.DocumentNode.SelectNodes("//div[@class='contain']/ul/li/a");
     2 
     3 
     4  foreach (var item in list)
     5 {
     6     //获取a标签下面的href
     7      var url = item.Attributes["href"].Value;
     8       // 获取a标签的文本
     9      var txt =item.InnerHtml;
    10 }
    View Code

    这样,我们就获取电影天堂的影片分类啦。

  • 相关阅读:
    集训作业 洛谷P1135 奇怪的电梯
    集训作业 洛谷P1433 吃奶酪
    集训作业 洛谷P1443 马的遍历
    集训作业 洛谷P1032 字串变换
    T3 成绩单 题解
    T4 字符串的修改 题解
    P3379 最近公共祖先(LCA) 洛谷
    集训作业 洛谷P3913 车的攻击
    解决intellij idea卡顿的方法
    好的在线开发工具推荐
  • 原文地址:https://www.cnblogs.com/LmuQuan/p/10708974.html
Copyright © 2011-2022 走看看