`

C# 通过代理获取url数据

    博客分类:
  • c#
c# 
阅读更多
public static string GetUrl2Data(String url, bool stat)
{
	WebRequest myWebRequest = null;
	WebResponse myWebResponse = null;
	Stream streamResponse = null;
	StreamReader streamRead = null;
	StringBuilder sbuilder = null;
	try
	{
		myWebRequest = WebRequest.Create(url);
		WebProxy myProxy = new WebProxy();
		if (stat == true)//使用代理
		{
			//代理地址
			string proxyAddressPort = Utils.ReadIniData("run", "ProxyAddressPort", "", ROOT + "\\netbench.ini");
			string username = Utils.ReadIniData("run", "ProxyUserName", "", ROOT + "\\netbench.ini");
			string password = Utils.ReadIniData("run", "ProxyPassWord", "", ROOT + "\\netbench.ini");

			Uri newUri = new Uri(proxyAddressPort);
			myProxy.Address = newUri;

			myProxy.Credentials = new NetworkCredential(username, password);
			myWebRequest.Proxy = myProxy;
		}
		else
		{
			myWebRequest.Proxy = myProxy;
		}
		myWebResponse = myWebRequest.GetResponse();

		streamResponse = myWebResponse.GetResponseStream();
		streamRead = new StreamReader(streamResponse);

		Char[] readBuff = new Char[256];
		int count = streamRead.Read(readBuff, 0, 256);
		sbuilder = new StringBuilder();
		while (count > 0)
		{
			sbuilder.Append(new String(readBuff, 0, count));
			count = streamRead.Read(readBuff, 0, 256);
		}
	}
	catch (UriFormatException e)
	{
		Console.WriteLine("\nUriFormatException is thrown.Message is {0}", e.Message);
		Console.WriteLine("\nThe format of the myProxy address you entered is invalid");
	}
	finally
	{
		if (streamResponse != null)
			streamResponse.Close();
		if (streamRead != null)
			streamRead.Close();
		if (myWebResponse != null)
			myWebResponse.Close();
	}
	if (sbuilder != null && !("").Equals(sbuilder.ToString()))
		return sbuilder.ToString();
	else
		return "";
}
分享到:
评论

相关推荐

    C#获取实时天气预报

    综上所述,通过C#调用Web服务获取实时天气预报是一个综合性的任务,涉及到网络通信、API调用、数据解析以及UI设计等多个方面。通过学习和实践这一过程,开发者可以深化对C#和Web服务交互的理解,同时提升解决问题的...

    C#设置IE代理和使用代理访问网页

    这里,我们首先创建了一个 `WebRequest` 对象来指定请求的目标URL,然后将其代理属性设置为我们创建的 `WebProxy` 对象,从而确保所有通过该请求发出的数据都将通过指定的代理服务器。 #### 处理HTTP响应 对于发送...

    c#传递url下载文件

    ### C#传递URL下载文件知识点解析 在C#开发中,经常需要处理文件的上传、下载等操作。本文将详细解析一个具体的例子:通过C#从远程服务器下载文件,并深入探讨其中涉及的关键技术和代码实现。 #### 一、背景介绍 ...

    根据url获取页面数据

    在IT领域,根据URL获取页面数据是一项基础但至关重要的技能,尤其在爬虫软件和跨域数据处理中。这项技术涉及到网络请求、HTML解析、JSON处理等多个知识点,下面将详细阐述这些内容。 首先,理解“URL”是网络资源的...

    C#获取目标网址http头信息,比如状态码等等信息

    本文将深入探讨如何在C#中获取这些关键数据。 首先,我们需要了解HTTP头的基本结构。HTTP头由一系列键值对组成,其中包含了服务器与客户端之间交互的信息。状态码是HTTP头的一个关键组成部分,它以三位数字表示请求...

    ASP.NET2.0 c# 获取浏览器,IP,URL,操作系统

    ### 获取URL 在ASP.NET中,可以通过`Request.Url.ToString()`来获取当前请求的完整URL。`Request`对象包含了所有HTTP请求的信息,而`Url`属性则返回一个`Uri`实例,表示请求的统一资源标识符。将这个`Uri`实例转换...

    C#使用Selenium+PhantomJS抓取数据

    通过以上步骤,你可以在C#环境中利用Selenium WebDriver和PhantomJS实现对JavaScript渲染网页的数据抓取。这为处理动态网页提供了便利,特别是在自动化爬虫任务中,能有效获取到页面完整且动态生成的内容。在实际...

    C#获取远程网页中的所有链接URL

    ### C# 获取远程网页中的所有链接URL 在本篇文章中,我们将探讨如何使用C#语言来获取远程网页上的所有链接URL。此技术广泛应用于搜索引擎、爬虫程序以及其他需要收集网络资源的应用场景中。 #### 一、基础知识介绍...

    C# 获取网页内容代码

    在C#编程环境中,获取网页内容是常见的任务,尤其对于数据爬虫或者自动化脚本来说。这个主题主要涉及网络编程和HTML解析。以下是一些关键知识点的详细解释: 1. **HTTP请求**: C#中获取网页内容首先要进行HTTP请求...

    C#爬取网站数据

    C#爬虫主要是通过HTTP请求来获取网页内容,然后使用HTML解析库对获取的网页进行解析,提取所需的数据。在C#中,我们可以使用HttpClient类来发起HTTP请求,获取网页源代码。例如: ```csharp using System.Net.Http;...

    C#获取路由器外网IP,MAC地址的实现代码

    例如,在`SendRequest`方法中创建`HttpWebRequest`对象,设置请求的URL为获取IP的代理页面,然后读取响应内容并进行处理。 至于获取路由器的MAC地址,这通常需要登录到路由器的Web管理界面,因为MAC地址是存储在...

    连接webservice数据接口,获取数据的小例子,这里使用的是winfrom

    本文将深入探讨如何使用Windows Forms(Winform)客户端连接到Web服务接口并获取数据。Winform是.NET Framework下的一个桌面应用程序开发框架,提供丰富的用户界面设计工具,适合构建桌面应用。 首先,我们要理解...

    根据Ip获取省份城市

    如果客户端通过代理服务器访问,则返回的是代理服务器的IP地址。 ##### 2. 发送HTTP请求 ```csharp string postUrl = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=" + ip; string res = ...

    信息采集,c#.net能够抓取页面中的数据

    C#.NET允许通过HttpWebRequest或HttpClient配置代理,实现匿名抓取。 8. **Cookie管理**:有些网站需要登录才能访问特定数据,这时需要处理Cookie。C#.NET提供了CookieContainer类来管理Cookie,确保请求带有正确的...

    C#发送并获取请求的内容,得到源代码

    总的来说,C#中的HTTP请求与源代码获取是通过`HttpClient`类和相关的辅助类来实现的,配合其他工具库可以高效地处理网络数据。在开发过程中,理解和熟练运用这些技术对于任何IT从业者都是至关重要的。

    c#编写的QQ空间相册照片获取工具

    本篇文章将深入探讨一款由C#编程语言编写的QQ空间相册照片获取工具,它能帮助用户轻松获取他人QQ空间中的照片,为个人或企业提供了便捷的数据获取途径。 首先,我们来理解C#语言在其中的作用。C#是一种面向对象的...

    C#调用WebService实现天气预报

    在这个例子中,我们使用的是一个提供天气预报信息的WebService,通过发送请求并接收响应来获取所需数据。 要调用WebService,C#提供了System.Web.Services命名空间中的SoapHttpClientProtocol类,它是Web服务客户端...

    C#POST请求WCF服务

    在IT行业中,C#是一种广泛...通过以上步骤,你就能在C#中实现POST请求到WCF服务,同时处理带有输入参数和返回值的JSON数据。在实际开发中,确保遵循最佳实践,如使用异步操作以提高性能,以及正确处理异常和错误情况。

    C# 请求的连接,获取远程资源,返回String

    C#提供了多种方式来读取并解析这些数据,其中一种常见的方式就是将响应体转换为字符串。 在代码示例中,通过`StreamReader`类来读取响应流(`httpResponse.GetResponseStream()`),并将其转换为字符串。这里有一个...

Global site tag (gtag.js) - Google Analytics