C#网页数据采集(三)HttpWebRequest
- <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">截取到网页数据是js加载完以后的</span>
- <span style="white-space:pre"> </span> HtmlWeb webClient = new HtmlWeb();
- string _url = "http://news.baidu.com/";
- HtmlAgilityPack.HtmlDocument html1 = webClient.Load(_url);//是你需要解析的url
- var end3 = html1.Encoding.BodyName;//获取页面编码格式
- string _htmlSource = GetHtmlSource(_url, System.Text.Encoding.GetEncoding(end3));//还是需要设置一次编码格式避免乱码 调用<span style="font-family: Arial, Helvetica, sans-serif;">GetHtmlSource方法</span>
- public static string GetHtmlSource(string url, Encoding charset)
- {
- string _html = string.Empty;
- try
- {
- HttpWebRequest _request = (HttpWebRequest)WebRequest.Create(url);
- HttpWebResponse _response = (HttpWebResponse)_request.GetResponse();
- using (Stream _stream = _response.GetResponseStream())
- {
- using (StreamReader _reader = new StreamReader(_stream, charset))
- {
- _html = _reader.ReadToEnd();
- }
- }
- }
- catch (WebException ex)
- {
- using (StreamReader sr = new StreamReader(ex.Response.GetResponseStream()))
- {
- _html = sr.ReadToEnd();
- }
- }
- catch (Exception ex)
- {
- _html = ex.Message;
- }
- return _html;
- }
C#网页数据采集(三)HttpWebRequest的更多相关文章
- 网页数据采集 - 系列之Flash数据采集
经常看到一些朋友在讨论如何采集flash中的数据,讨论来讨论区,结论就是:flash不能采集,其实也不总是这样.本篇就跟大家分享如何采集flash中的数据. 在开始之前,先说明一下:一般来说flash ...
- 使用urllib2打开网页的三种方法(Python2)
python2才有urllib2模块,python3把urllib和urllib2封装成了urllib模块 使用urllib2打开网页的三种方法 #coding:utf-8 import urllib ...
- JQuery制作网页—— 第三章 JavaScript操作DOM对象
1. DOM:Document Object Model(文档对象模型): DOM操作: ●DOM是Document Object Model的缩 ...
- Python for Infomatics 第13章 网页服务三(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.6 应用程序接口API 现 ...
- 使用urllib2打开网页的三种方法
#coding:utf-8 import urllib2 import cookielib url="http://www.baidu.com" print '方法 1' resp ...
- url下载网页的三种方法
# -*- coding: utf-8 -*- import cookielib import urllib2 url = "http://www.baidu.com" print ...
- 利用EXCEL表实现网页数据采集到MYSQL数据库
先复制页面表格数据到EXCEL中,比如 2012-1-4 52.7 52.7 49 48.83 190007 9506968 2012-1-5 48.86 49.79 45.72 45.6 62325 ...
- 浅谈网络爬虫爬js动态加载网页(三)
上一篇讨论了web driver对动态网页的抓取与分析,可以很清楚的看出这是一种集中式处理方式,简单说,就是利用服务器,打开一个真正的brower,然后将需要解析的地址交给浏览器,浏览器去解析,然后将 ...
- 简单的CSS网页布局--三列布局
三列布局其实不难,不过要用到position:absolute这个属性,因为这个属性是基于浏览器而言,左右部分各放在左右侧,空出中间一列来实现三列布局. (一)三列布局自适应 <!DOCTYPE ...
随机推荐
- 前端每日实战:73# 视频演示如何用纯 CSS 创作一只卡通狐狸
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/OEKZed 可交互视频 此视频是可 ...
- 对业务类进行构造的工厂类BLLFactory
using System; using System.Collections.Generic; using System.Text; using System.Collections; using W ...
- python-前端JS
JavaScript JS(JavaScript)和 JAVA是没有任何关系的,使前端语言动作的基础 特点:现在对前端所有的动作操作都是基于JS操作的.是一门逻辑语言 简单易用:可以使用任何文本编辑工 ...
- Dubbo 系列(07-1)集群容错 - 服务字典
Dubbo 系列(07-1)集群容错 - 服务字典 [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 本篇文章,将开始分析 Dubbo 集群容错方面的 ...
- Spring Cloud动态刷新配置信息
有时候在配置中心有些参数是需要修改的,这时候如何不重启而达到实时生效的效果呢? 添加依赖 <dependencies> ... <dependency> <groupId ...
- 32-python基础-python3-列表永久排序方法-sort()方法
1-数值的列表或字符串的列表,能用 sort()方法排序. 实例1: 实例2: 2-可以指定 reverse 关键字参数为 True,让 sort()按逆序排序. 实例1: 3-关于 sort()方法 ...
- HashSet源码解析笔记
HashSet是基于HashMap实现的.HashSet底层采用HashMap来保存元素,因此HashSet底层其实比较简单. HashSet是Set接口典型实现,它按照Hash算法来存储集合中的元素 ...
- android中SharedPreferences
SharedPreferences:用于存储少量并且数据格式简单,基本上都是普通的字符串,标量类型的值,比如:应用程序的各种配置信息等. SharedPreferences:保存的数据格式主要是key ...
- rem适配布局(rem+less+媒体查询 和 rem+flexible.js)
1. rem 基础 rem 是一个相对单位,类似于 em ,em 是父元素字体大小. em 是相对于父元素 的字体大小来说的 rem 是相对于 html 元素 字体大小来说的 rem 优点 就是可以 ...
- swagger2.0与spring结合
官方文档: http://www.baeldung.com/swagger-2-documentation-for-spring-rest-api swagger是一个前后端api统一文档和测试框 ...