1. public static void Get()
  2. {
  3. // string xpathtrI = "//*[@id='classify-list']/dl/dd/a/cite/span/i";
  4. #region 获取首页的分类
  5.  
  6. ////主页的html地址
  7. //string urlHome = "http://www.qidian.com/";
  8. //HtmlWeb web = new HtmlWeb();
  9. //HtmlAgilityPack.HtmlDocument htmlDoc = web.Load(urlHome);
  10. ////创建html的节点
  11. //HtmlNode rootNode1 = htmlDoc.DocumentNode;
  12. //string xpathtrA = "//*[@id='classify-list']/dl/dd";
  13. //HtmlNodeCollection classList = rootNode1.SelectNodes(xpathtrA);
  14. //List<string> listINode = new List<string>();
  15. //foreach (HtmlNode item in classList)
  16. //{
  17. // //获取分类
  18. // string inode = item.SelectSingleNode("//a/cite/span/i").InnerText;
  19. // listINode.Add(inode);
  20. //}
  21.  
  22. #endregion
  23.  
  24. #region 分类及明细
  25.  
  26. //string urlDetail = "http://xuanhuan.qidian.com/";
  27. //List<string> urlList = new List<string>();
  28. //urlList.Add("http://xuanhuan.qidian.com/");
  29. //urlList.Add("http://qihuan.qidian.com/");
  30. //urlList.Add("http://wuxia.qidian.com/");
  31. //urlList.Add("http://xianxia.qidian.com/");
  32. //urlList.Add("http://dushi.qidian.com/");
  33. //urlList.Add("http://zhichang.qidian.com/");
  34. //urlList.Add("http://junshi.qidian.com/");
  35. //urlList.Add("http://lishi.qidian.com/");
  36. //urlList.Add("http://youxi.qidian.com/");
  37. //urlList.Add("http://tiyu.qidian.com/");
  38. //urlList.Add("http://kehuan.qidian.com/");
  39. //urlList.Add("http://lingyi.qidian.com/");//foreach (string url in urlList)
  40. //{
  41. // HtmlAgilityPack.HtmlDocument htmlDetail = web.Load(url);
  42. // HtmlNode rootNode2 = htmlDetail.DocumentNode;
  43. // string a = "//*[@class='book-info']";
  44. // HtmlNodeCollection classList2 = rootNode2.SelectNodes(a);
  45. // List<string> listINode2 = new List<string>();
  46. // foreach (HtmlNode item in classList2)
  47. // {
  48. // //获取分类
  49. // string inode = item.InnerHtml;
  50. // listINode2.Add(inode);
  51. // }
  52. //}
  53.  
  54. #endregion
  55.  
  56. #region 文章内容
  57.  
  58. HtmlWeb web = new HtmlWeb();
  59. string u = "http://read.qidian.com/chapter/zOGI9RYmNdFhO--gcH8iFg2/h3iHSEH1cSpMs5iq0oQwLQ2";
  60. HtmlAgilityPack.HtmlDocument htmlDocment = web.Load(u);
  61. //创建html的节点
  62. HtmlNode htmlNode = htmlDocment.DocumentNode;
  63. string x = "//*[@class='read-content j_readContent']";
  64. HtmlNode htmlNodeP = htmlNode.SelectSingleNode(x);
  65. string htmlD = htmlNodeP.InnerText;
  66.  
  67. #endregion
  68.  
  69. }

只是拿一个例子而已。

C#使用xpath简单爬取网站的内容的更多相关文章

  1. Python入门,以及简单爬取网页文本内容

    最近痴迷于Python的逻辑控制,还有爬虫的一方面,原本的目标是拷贝老师上课时U盘的数据.后来发现基础知识掌握的并不是很牢固.便去借了一本Python基础和两本爬虫框架的书.便开始了自己的入坑之旅 言 ...

  2. Python简单爬取Amazon图片-其他网站相应修改链接和正则

    简单爬取Amazon图片信息 这是一个简单的模板,如果需要爬取其他网站图片信息,更改URL和正则表达式即可 1 import requests 2 import re 3 import os 4 de ...

  3. requests 使用免费的代理ip爬取网站

    import requests import queue import threading from lxml import etree #要爬取的URL url = "http://xxx ...

  4. Python 利用 BeautifulSoup 爬取网站获取新闻流

    0. 引言 介绍下 Python 用 Beautiful Soup 周期性爬取 xxx 网站获取新闻流: 图 1 项目介绍 1. 开发环境 Python: 3.6.3 BeautifulSoup:   ...

  5. Java - XPath解析爬取内容

    code { margin: 0; padding: 0; white-space: pre; border: none; background: transparent; } pre { backg ...

  6. Golang+chromedp+goquery 简单爬取动态数据

    目录 Golang+chromedp+goquery 简单爬取动态数据 Golang的安装 下载golang软件 解压golang 配置golang 重新导入配置 chromedp框架的使用 实际的代 ...

  7. 使用scrapy爬取网站的商品数据

    目标是爬取网站http://www.muyingzhijia.com/上全部的商品数据信息,包括商品的一级类别,二级类别,商品title,品牌,价格. 搜索了一下,python的scrapy是一个不错 ...

  8. requests+xpath+map爬取百度贴吧

    # requests+xpath+map爬取百度贴吧 # 目标内容:跟帖用户名,跟帖内容,跟帖时间 # 分解: # requests获取网页 # xpath提取内容 # map实现多线程爬虫 impo ...

  9. 利用linux curl爬取网站数据

    看到一个看球网站的以下截图红色框数据,想爬取下来,通常爬取网站数据一般都会从java或者python爬取,但本人这两个都不会,只会shell脚本,于是硬着头皮试一下用shell爬取,方法很笨重,但旨在 ...

随机推荐

  1. 关于java异常处理的自我学习

    算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:NegativeAr ...

  2. JS_高程3.基本概念(5)语句

    1.if语句 2.do-while语句:后测循环语句,循环体内的代码至少执行一次. 3.while语句:前测循环语句. 4.for语句:前测循环语句. 注意:在ECMAScript中不存在块级作用域, ...

  3. 唯美PS转手绘之SAI篇_百度经验

    唯美PS转手绘之SAI篇 https://jingyan.baidu.com/article/fd8044fad3d5c05030137a5f.html

  4. Kworkerd恶意挖矿分析

    转自:https://www.360zhijia.com/anquan/417114.html 0x01 快速特征排查 TOP显示CPU占用高,但是没有高占用的进程 存在与未知服务器13531端口建立 ...

  5. 给已经存在的项目添加git

    1.打开终端​,cd到已存在项目的目录 ​​​2.输入以下命令行,初始化一个本地仓库: ​git init 3.输入以下命令,把工程所有文件都添加到该仓库中(千万别忘记后面的.号!!!): ​git ...

  6. Java8 stream 中利用 groupingBy 进行多字段分组求和

    Java8的groupingBy实现集合的分组,类似Mysql的group by分组功能,注意得到的是一个map 对集合按照单个属性分组 case1: List<String> items ...

  7. 巧用watch命令执行循环操作,来解放我们的双手

    有时候我们需要重复执行某个 命令,观察某个文件和某个结果的变化情况.可以写 脚本去实现这些需求,但是有更简单的方法,本文档要介绍的就是watch 命令. 1. 以固定时间反复执行某个命令 root@j ...

  8. Control group namespaces

    https://www.toptal.com/linux/separation-anxiety-isolating-your-system-with-linux-namespaces https:// ...

  9. seaJS简介和完整实例

    什么是 seaJS ? 和requireJS相似的,seaJS 也是用JavaScript编写的JS框架,主要功能是可以按不同的先后依赖关系对 JavaScript 等文件的进行加载工作,可简单理解为 ...

  10. easyui的datagrid和treegrid的使用

    $('#listTree').treegrid({ idField: 'id', treeField: 'menuName', columns: [[ { title: 'Task Name', fi ...