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

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

  • 相关阅读:
    重启进程
    linux如何查看端口被哪个进程占用?
    Web服务器磁盘满深入解析及解决
    基于Nginx实现访问控制、连接限制
    Tomcat线程模型分析及源码解读
    linux防火墙使用以及配置
    MySQL死锁及解决方案
    tcpdump 命令
    netperf 网络性能测试
    netstat 命令详解
  • 原文地址:https://www.cnblogs.com/LmuQuan/p/10708974.html
Copyright © 2011-2022 走看看