C#使用xpath简单爬取网站的内容
public static void Get()
{
// string xpathtrI = "//*[@id='classify-list']/dl/dd/a/cite/span/i";
#region 获取首页的分类 ////主页的html地址
//string urlHome = "http://www.qidian.com/";
//HtmlWeb web = new HtmlWeb();
//HtmlAgilityPack.HtmlDocument htmlDoc = web.Load(urlHome);
////创建html的节点
//HtmlNode rootNode1 = htmlDoc.DocumentNode;
//string xpathtrA = "//*[@id='classify-list']/dl/dd";
//HtmlNodeCollection classList = rootNode1.SelectNodes(xpathtrA);
//List<string> listINode = new List<string>();
//foreach (HtmlNode item in classList)
//{
// //获取分类
// string inode = item.SelectSingleNode("//a/cite/span/i").InnerText;
// listINode.Add(inode);
//} #endregion #region 分类及明细 //string urlDetail = "http://xuanhuan.qidian.com/";
//List<string> urlList = new List<string>();
//urlList.Add("http://xuanhuan.qidian.com/");
//urlList.Add("http://qihuan.qidian.com/");
//urlList.Add("http://wuxia.qidian.com/");
//urlList.Add("http://xianxia.qidian.com/");
//urlList.Add("http://dushi.qidian.com/");
//urlList.Add("http://zhichang.qidian.com/");
//urlList.Add("http://junshi.qidian.com/");
//urlList.Add("http://lishi.qidian.com/");
//urlList.Add("http://youxi.qidian.com/");
//urlList.Add("http://tiyu.qidian.com/");
//urlList.Add("http://kehuan.qidian.com/");
//urlList.Add("http://lingyi.qidian.com/");//foreach (string url in urlList)
//{
// HtmlAgilityPack.HtmlDocument htmlDetail = web.Load(url);
// HtmlNode rootNode2 = htmlDetail.DocumentNode;
// string a = "//*[@class='book-info']";
// HtmlNodeCollection classList2 = rootNode2.SelectNodes(a);
// List<string> listINode2 = new List<string>();
// foreach (HtmlNode item in classList2)
// {
// //获取分类
// string inode = item.InnerHtml;
// listINode2.Add(inode);
// }
//} #endregion #region 文章内容 HtmlWeb web = new HtmlWeb();
string u = "http://read.qidian.com/chapter/zOGI9RYmNdFhO--gcH8iFg2/h3iHSEH1cSpMs5iq0oQwLQ2";
HtmlAgilityPack.HtmlDocument htmlDocment = web.Load(u);
//创建html的节点
HtmlNode htmlNode = htmlDocment.DocumentNode;
string x = "//*[@class='read-content j_readContent']";
HtmlNode htmlNodeP = htmlNode.SelectSingleNode(x);
string htmlD = htmlNodeP.InnerText; #endregion }
只是拿一个例子而已。
C#使用xpath简单爬取网站的内容的更多相关文章
- Python入门,以及简单爬取网页文本内容
最近痴迷于Python的逻辑控制,还有爬虫的一方面,原本的目标是拷贝老师上课时U盘的数据.后来发现基础知识掌握的并不是很牢固.便去借了一本Python基础和两本爬虫框架的书.便开始了自己的入坑之旅 言 ...
- Python简单爬取Amazon图片-其他网站相应修改链接和正则
简单爬取Amazon图片信息 这是一个简单的模板,如果需要爬取其他网站图片信息,更改URL和正则表达式即可 1 import requests 2 import re 3 import os 4 de ...
- requests 使用免费的代理ip爬取网站
import requests import queue import threading from lxml import etree #要爬取的URL url = "http://xxx ...
- Python 利用 BeautifulSoup 爬取网站获取新闻流
0. 引言 介绍下 Python 用 Beautiful Soup 周期性爬取 xxx 网站获取新闻流: 图 1 项目介绍 1. 开发环境 Python: 3.6.3 BeautifulSoup: ...
- Java - XPath解析爬取内容
code { margin: 0; padding: 0; white-space: pre; border: none; background: transparent; } pre { backg ...
- Golang+chromedp+goquery 简单爬取动态数据
目录 Golang+chromedp+goquery 简单爬取动态数据 Golang的安装 下载golang软件 解压golang 配置golang 重新导入配置 chromedp框架的使用 实际的代 ...
- 使用scrapy爬取网站的商品数据
目标是爬取网站http://www.muyingzhijia.com/上全部的商品数据信息,包括商品的一级类别,二级类别,商品title,品牌,价格. 搜索了一下,python的scrapy是一个不错 ...
- requests+xpath+map爬取百度贴吧
# requests+xpath+map爬取百度贴吧 # 目标内容:跟帖用户名,跟帖内容,跟帖时间 # 分解: # requests获取网页 # xpath提取内容 # map实现多线程爬虫 impo ...
- 利用linux curl爬取网站数据
看到一个看球网站的以下截图红色框数据,想爬取下来,通常爬取网站数据一般都会从java或者python爬取,但本人这两个都不会,只会shell脚本,于是硬着头皮试一下用shell爬取,方法很笨重,但旨在 ...
随机推荐
- button标题左对齐
Button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;//左对齐(UIControlContentHo ...
- jQusery .基础
1.jQusery 的基本用法 <%@ page language="java" contentType="text/html; charset=UTF-8&quo ...
- JS膏集04
JS膏集04 1.apply和call方法 可以改变this的指向,可以用于函数的调用 apply和call方法中如果没有传入参数,或者传入null,那么调用该方法的函数中的this就是window ...
- 优先队列重载<运算符
https://vjudge.net/problem/POJ-3190 #include<iostream> #include<cstdio> #include<queu ...
- 专门为ADO二层升三层的咏南中间件(特种用途)
专门为ADO二层升三层的咏南中间件(特种用途) 演示下载:链接: https://pan.baidu.com/s/1bulGBIZ6A1nkeErxIrGsGA 密码: 22dk 解压后运行ynmai ...
- SPI协议详解
原帖地址:https://blog.csdn.net/weiqifa0/article/details/82765892
- Android: Android Studio签名打包的两种方式(zz)
注:给我们自己开发的app签名,就代表着我自己的版权,以后要进行升级,也必须要使用相同的签名才行.签名就代表着自己的身份(即keystore),多个app可以使用同一个签名. 如果不知道签名是啥意思, ...
- grid - 隐式地命名网格区域名称
通常可以将网格线命名成任何你想命名的名称,如果网格线名称添加-start和-end的后缀,其实也隐式的创建一个网格区域,可以用来设置网格项目的位置. 在这个示例中,行和列都具有inner-start和 ...
- iOS scrollsToTop属性失效
点击状态栏返回顶部失效,是因为scrollView的scrollsToTop属性失效 (继承于scrollView的tableView collectionView也算). 这个属性默认是开启的,然而 ...
- Git 将代码回到指定版本
将代码回到hash为1fbcb7ea3b43df60c639875d2bb68e20b451059e的版本 git checkout 1fbcb7ea3b43df60c639875d2bb68e20b ...