网站数据获取

 本例中主要是通过HtmlAgilityPack解析html源码获取所需的数据.

using HtmlAgilityPack;

1.通过C#中WebRequest,WebResponse,StreamReader类获取网页源代码

WebRequest request = WebRequest.Create(url);
using (WebResponse response = request.GetResponse())
using (StreamReader reader = new StreamReader(response.GetResponseStream(), encoding))
result = reader.ReadToEnd();

2.通过网页URL获取HtmlNode ,通过HtmlAgilityPack中的HtmlDocument类获取

HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
document.LoadHtml(htmlSource);
HtmlNode rootNode = document.DocumentNode;
return rootNode;

3.通过HtmlNode的SelectSingleNode方法就可获取你所需要的内容了,注意以下代码中path是HTML的标签路径如:path="//div[@class=‘article_title‘]/h1/span/a";//文章标题PATH

对应于

<div class=’article_title’>

<h1>

<span>

<a>获取这里的内容

</a>

</span>

</h1>

</div>

参考源码如下:

HtmlNode temp = srcNode.SelectSingleNode(path);
if (temp == null)
return null;
return temp.InnerText;

返回值为: 获取这里的内容

其中temp.InnerHtml可获取网站HTML的内容如:<a>获取这里的内容</a>

通过以上操作就可获取到网站中你所需要的内容,希望此内容对大家有所帮助,引用源码文章链接http://blog.csdn.net/gdjlc/article/details/11620915

时间: 2024-10-25 03:59:06

网站数据获取的相关文章

PyCon 2014:机器学习应用占据Python的半壁江山

来自http://www.infoq.com/cn/news/2014/07/pycon-2014 今年的PyCon于4月9日在加拿大蒙特利尔召开,凭借快速的原型实现能力, Python在学术界得到了广泛应用.最近其官方网站发布了大会教程部分的视频和幻灯片,其中有很多(接近一半数量)跟数据挖掘和机器学习相关的内容,本文对此逐一介绍. 如何形式化一个科学问题然后用Python进行分析 目前有很多很强大Python数据挖掘库,比如Python语言的交互开发环境IPython,Python机器学习库S

Python 爬虫实战—盘搜搜

近期公司给了个任务:根据关键搜索百度网盘共享文件并下载. 琢磨了几天写下了一段简单的demo代码,后期优化没有处理. 主要的思路:(1)根据关键字爬取盘搜搜的相关信息 (2)解析并获取盘搜搜跳转到百度网盘的URL地址 (3)解析百度网盘获取真实下载URL然后下载文件 本来下了一段ip代理处理的, 可惜免费爬取的IP时效性差基本上用不了,所以下面给出的是没有ip代理demo 然而没有ip代理处理的话, 下载不到几个文件ip就被封了.所以下面的代码仅供学习. # -*- coding=utf-8 -

网站的优化----首页优化---现有首页

首页流量时非常大,如果按照一般的动态加载数据的形式来相应用户的每次的访问,读取数据数据,开销很大,导致首页访问速度降低,所以把数据预先刷入到redis服务器中.(不是做成静态页面刷入缓存中) 当用户用户访问时,访问www服务器时,由 php 调取 redis 数据,这里redis作为响应服务器提供数据,mysql作为数据存储.定时由脚本去读取数据,刷入redis. 在渲染页面的时候,采用的时懒加载. 懒加载(Load On Demand)是一种独特而又强大的数据获取方法,它能够在用户滚动页面的时

网站优化—页面静态化技术

数据库检索的问题 主要是为了减少数据库的操作,让MySQL能够提供更强大的服务 ? 使用缓存技术 磁盘缓存:就是将用户请求数据库的数据,保存到磁盘文件形成一个静态的HTML文本,下次用户的访问的时候,直接返回该HTML文本. 内存缓存:将MySQL的数据取出之后,保存到内存(memcache,不算一个NOSQL数据库,但是是一个缓存系统)之中,下次直接从内存中返回.(效率非常高) 注意:只要不使用sql语句作为查询条件的数据库(仓库)就叫做NOSQL数据库 优化MySQL 设计:存储引擎的选择,

JSP网站开发基础总结《八》

JSP的学习总结到本篇已经八篇了,内容比较多,但都是实战,本篇最后为大家介绍一个小效果:百度分页.就是当我们遍历的数据对象较多时,这时我们就会看到了这个效果了,那他是如何实现的呢?下面我们就一起学习一下. 1.分页数据获取方法: 获得数据总数: public int getSize() { int num = 0; Connection conn = null; Statement st = null; ResultSet rs = null; conn = DBO.getConnection(

网站统计中的数据收集原理及实现

转载自:http://blog.sina.com.cn/s/blog_62b832910102w5mx.html Avinash Kaushik将点击流数据的获取方式分为4种:log files.web beacons.JavaScript tags和packet sniffers,其中包嗅探器(packet sniffers)比较不常见,最传统的获取方式是通过WEB日志文件(log files):而beacons和JavaScript是目前较为流行的方式,Google Analytics目前就

网站页面的呈现方式

下午经过一场激烈的关于前端页面呈现问题的头脑风暴,: 经过讨论之后初步确定应该是两种方式: 第一种为,页面模板由后端返回,并由浏览器进行缓存.页面需要的业务数据,则通过服务调用的从后端获取.当数据获取之后,在前端页面通过JS的方式,将数据渲染. 第二种为,浏览器呈现的页面是有后端实现模板和数据的整合,并生成页面的HTML字符串,并把该字符串从后端返回给浏览器.页面的JS文件则主要完成前端的交互. 其实这两种方案,现有的技术都有使用,但是他们还是有一定的区别,此时我能想到的区别有: 1)第一种方案

Android之通过向WebService服务器发送XML数据获取相关服务

原理图如下: 即客户端向WebService服务器通过HTTP协议发送XML数据(内部包含调用的一些方法和相关参数数据),然后WebService服务器给客户端返回一定的XML格式的数据,客户端通过解析这些XML数据即可得到需要的数据. 具体实现过程如下: 建立一个HTTP连接: 通过加载一个XML格式的SOAP协议数据,把该数据封装成实体并通过HTTP请求发送给WebService服务器: 获得WebService服务器返回的XML数据,通过解析获得需要的数据.   一些提供免费的WebSer

常见浏览器的宽高代码写法!有原生JavaScript和jquery两种写法-------------------------------以及我的个人网站

我的个人网站 点击链接!欢迎大家访问 下面是网页一些常见的宽高的获取.........这是原生的写法(JavaScript) 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.clientHeight 网页可见区域宽: document.body.offsetWidth (包括边线的宽) 网页可见区域高: document.body.offsetHeight (包括边线的高) 网页正文全文宽: document.body.scro