Asp.Net使用代理IP远程获取数据

/// <summary>
    /// 远程获取数据
    /// </summary>
    /// <param name="url">url</param>
    /// <param name="code">编码</param>
    /// <param name="ProxyStr">代理IP,格式:10.20.30.40:8888</param>
    /// <returns></returns>
    public static string SendUrl(string url, Encoding code, string ProxyStr)
    {
        string html = string.Empty;
        try
        {
            HttpWebRequest WebReques = (HttpWebRequest)HttpWebRequest.Create(url);
            WebReques.Method = "GET";
            WebReques.Timeout = 20000;
            if (ProxyStr.Length > 0)
            {
                WebProxy proxy = new WebProxy(ProxyStr, true);
                WebReques.Proxy = proxy;
            }

            HttpWebResponse WebRespon = (HttpWebResponse)WebReques.GetResponse();
            if (WebRespon != null)
            {
                StreamReader sr = new StreamReader(WebRespon.GetResponseStream(), code);
                html = sr.ReadToEnd();
                sr.Close();
                sr.Dispose();
                WebRespon.Close();
            }
        }
        catch
        {
    html = “err”;
        }
        return html;
    }
//ProxyStr="" 表示不使用代理
时间: 2024-10-13 20:44:56

Asp.Net使用代理IP远程获取数据的相关文章

如何选择使用代理IP进行大数据营销

在互联网发展快速的今天,企业的发展已经离不开数据的支持.企业可以通过爬虫来进行数据收集进行分析,并制定最合适的营销方案.在数据收集的过程中,代理IP是必不可少的.那么,如何选择使用代理IP进行大数据营销?寻找合适的代理IP要考虑到以下几点因素:1.IP可用率.就是提取代理IP中可以正常使用的IP比率.如果使用带访问某个网站或者有访问超时的情况,就说明这个代理不可用.2.稳定性.在使用爬虫的时候需要用到大量代理IP,如果代理IP速度慢,对爬虫的效率降低了很多.所以在选择的时候还要看稳定性如何,这样

asp.net mvc Areas 母版页动态获取数据进行渲染

经常需要将一些通用的页面元素抽离出来制作成母版页,但是这里的元素一般都是些基本元素,即不需要 进行后台数据交换的基本数据,但是对于一些需要通过后台查询的数据,我们应该怎么传递给前台的母版页呢 这里描述的是对于多个页面统一的数据部分,即多个页面中均保持一致且与各个页面无其他关系的页面, 虽然我们可以通过razor使用C#语言来获取数据并写入页面中,但这就违背我们view中尽可能不处理数据的意愿了 所以给出的解决方案是,通过ViewBag将需要的数据写入页面中,将读取数据的操作提取到baseCont

scrapy中使用代理IP爬取数据时遇到IP失效时自动切换的方法

当使用临时的IP请求数据时,由于这些IP的过期时间极短,通常在1分钟~5分钟左右,这时scrapy就会报发以下错误 2020-01-17 17:00:48 [scrapy.downloadermiddlewares.retry] DEBUG: Retrying <GET https://xxxx/co s): Connection was refused by other side: 10061: 由于目标计算机积极拒绝,无法连接.. 这时如何自动切换IP,然后重新请求呢? 先看看scrapy的

asp.net MVC jsonp跨域获取数据

public class JsonpResult : JsonResult { object _data = null; public JsonpResult() { } public JsonpResult(object data) { this._data = data; } public override void ExecuteResult(ControllerContext context) { if(context != null) { HttpResponseBase respon

实用爬虫-02-爬虫真正使用代理 ip

实用爬虫-02-爬虫真正使用代理 ip 因为这里呢,是实用爬虫,想要仔细学习一些基础的,可以去查看: Python 爬虫教程:https://www.cnblogs.com/xpwi/category/1295282.html 获取代理 ip 的网站: www.goubanjia.com www.xicidaili.com [注意事项]: 1.如果测出来的 ip 是你本机的 ip,99% 的原因是:你找的代理 ip 不能用,更换其他 ip 2.测 ip 的地址的地址可能会变,一般不会更新,万一是

ASP.NET Web API实践系列07,获取数据, 使用Ninject实现依赖倒置,使用Konockout实现页面元素和视图模型的双向绑定

本篇接着上一篇"ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API",尝试获取数据. 在Models文件夹下创建Comment类: namespace MvcApplication5.Models { public class Comment { public int ID { get; set; } public string Author { get; set; } public string Text { ge

使用TaskManager爬取2万条代理IP实现自动投票功能

话说某天心血来潮想到一个问题,朋友圈里面经常有人发投票链接,让帮忙给XX投票,以前呢会很自觉打开链接帮忙投一票.可是这种事做多了就会考虑能不能使用工具来进行投票呢,身为一名程序猿决定研究解决这个问题.于是有了以下思考 1.是否能一个人投多票,如果不行又是什么限制了一人投多票? 答:投票网站限制了一个IP或者一个用户只能投一票,防止恶意刷票行为 2.如果是一个IP一票那是否代表着多个IP就能投多票了呢? 答:答案是肯定的 3.用什么方法能够在代码里面改变自己请求的IP? 答:HTTP请求的时候设置

豆瓣-代理ip登陆-css解决class空格

首先附上源码: from bs4 import BeautifulSoup from selenium import webdriver import time from ArticleSpider.proxy_pool import proxy import csv #代理Ip iplist=proxy().get_ip_list() proxies=proxy().get_random_ip(iplist) #账号密码 user={ 'word':'账号', 'password':'密码'

构建一个给爬虫使用的代理IP池

做网络爬虫时,一般对代理IP的需求量比较大.因为在爬取网站信息的过程中,很多网站做了反爬虫策略,可能会对每个IP做频次控制.这样我们在爬取网站时就需要很多代理IP. 代理IP的获取,可以从以下几个途径得到: 从免费的网站上获取,质量很低,能用的IP极少 购买收费的代理服务,质量高很多 自己搭建代理服务器,稳定,但需要大量的服务器资源. 本文的代理IP池是通过爬虫事先从多个免费网站上获取代理IP之后,再做检查判断IP是否可用,可用的话就存放到MongoDB中,最后展示到前端的页面上. 获取可用Pr