精华内容
下载资源
问答
  • 那么多的代理商我们应该怎样进行选,关于速度快的国内ip代理加速器下载这个话题,我们下面来讨论一下: 一家好的ip代理网站要能够保证以下几点: 1.IP代理的速度,速度快的IP代理直接加速的工作的效率。 2.海量的IP...

    代理ip早已深入到我们生活的各个方面,例如,我们做网络业务数量采集的时候,这个就需要大力ip代理;游戏多开的时候也会用到IP代理;一些工作室,设备多,都是要用到大量的IP代理。那么多的代理商我们应该怎样进行选,关于速度快的国内ip代理加速器下载这个话题,我们下面来讨论一下:

    一家好的ip代理网站要能够保证以下几点:

    1.IP代理的速度,速度快的IP代理直接加速的工作的效率。

    2.海量的IP,例如注册业务是需要大量的IP的,要能够保证IP的数量。

    3.IP更新速度也会影响我们的使用效率。如果ip更新得快的话,自然我们的工作效率便会得到提升。

    4.安全性,也是影响IP使用的一个重要因素。选择的代理可以满足以上的条件可以选择进行试用,适合自己的才是最好的,不能盲目的去选择,不然只能是浪费时间。

    5.IP的多地区化,很多业务都是需要大量不同地区的IP,减少同地区IP的相连性。

    6.支持多平台使用,电脑,手机,云手机,模拟器,虚拟机,路由器各平台使用。

    兔子IP代理满足以上所有要求,秉承速度快,稳定,安全的原则为广大用户提供最优质的服务!

    原文:https://www.tuziip.com/article/8931.html

    展开全文
  • var config={ //不想访问的东西,节约流量 "404":[ "http://qidian.qpic.cn/qdbimg" ], //奇数为需要下载的,偶数为不需要下载的 needLoad:[ //匹配需要下载的 [ "/*.js", ...
    var config={
        //不想访问的东西,节约流量
        "404":[
            "http://qidian.qpic.cn/qdbimg"
        ],
        //奇数为需要下载的,偶数为不需要下载的
        needLoad:[
            //匹配需要下载的
            [
                "/*.js",
                "/*.css",
                "/*.png"
            ],
            //匹配不需要下载的
            [
                "/a.js"
            ]
        ],
        //修改文件保存的地方,默认按照url来的
        saveFiles:[
            //防止太深文件夹
            ["(//*/*/*/*/*/)**/","$1"],
            //过滤无效文件夹字符
            [/(\/\w*)\?+(\w*\/)/gi,"$1$2"]
        ],
        //代理的端口号
        port:100
    }
    
    function regDir(str){
        var reg=str
        if(typeof reg=="string"){
            reg=reg.replace(/[\[\]\\\^\:\.\?\+]/g,function(m){
                return "\\"+m;
            })
            reg=reg.replace(/\*\*|\*/g,function(m){
                if(m=="**"){
                    return "[\\w\\W]*";
                }else{
                    return "[^\\\/]*";
                }
    
            })
            reg=new RegExp(reg,"gi")
        }
        return reg
    }
    String.prototype.Test=function(regStr){
        var reg=regDir(regStr)
        return reg.test(this)
    }
    String.prototype.Replace=function(regStr,fn){
        var reg=regDir(regStr)
        return this.replace(reg,fn);
    }
    var fs=require("fs")
    function mkdir(filepath){
        var path=require("path")
        if(!fs.existsSync(path.dirname(filepath))){
            mkdir(path.dirname(filepath))
        }
        if(!fs.existsSync(filepath)){
            fs.mkdirSync(filepath)
        }
    }
    
    
    function eachHeader (obj, fn) {
        if (Array.isArray(obj.rawHeaders)) {
            // ideal scenario... >= node v0.11.x
            // every even entry is a "key", every odd entry is a "value"
            var key = null;
            obj.rawHeaders.forEach(function (v) {
                if (key === null) {
                    key = v;
                } else {
                    fn(key, v);
                    key = null;
                }
            });
        } else {
            // otherwise we can *only* proxy the header names as lowercase'd
            var headers = obj.headers;
            if (!headers) return;
            Object.keys(headers).forEach(function (key) {
                var value = headers[key];
                if (Array.isArray(value)) {
                    // set-cookie
                    value.forEach(function (val) {
                        fn(key, val);
                    });
                } else {
                    fn(key, value);
                }
            });
        }
    }
    var hopByHopHeaders = [
        'Connection',
        'Keep-Alive',
        'Proxy-Authenticate',
        'Proxy-Authorization',
        'TE',
        'Trailers',
        'Transfer-Encoding',
        'Upgrade'
    ];
    // create a case-insensitive RegExp to match "hop by hop" headers
    var isHopByHop = new RegExp('^(' + hopByHopHeaders.join('|') + ')$', 'i');
    //伪造http
    function parse (req, server) {
    
        var parsed = require("url").parse(req.url);
        var socket = req.socket;
        parsed.uri=parsed.href;
        parsed.gzip=true;
        // proxy the request HTTP method
        parsed.method = req.method;
    
        // setup outbound proxy request HTTP headers
        var headers = {};
        var hasXForwardedFor = false;
        parsed.headers = headers;
        eachHeader(req, function (key, value) {
            var keyLower = key.toLowerCase();
            if (!hasXForwardedFor && 'x-forwarded-for' === keyLower) {
                // append to existing "X-Forwarded-For" header
                // http://en.wikipedia.org/wiki/X-Forwarded-For
                hasXForwardedFor = true;
                value += ', ' + socket.remoteAddress;
            }
            if (isHopByHop.test(key)) {
            } else {
                var v = headers[key];
                if (Array.isArray(v)) {
                    v.push(value);
                } else if (null != v) {
                    headers[key] = [ v, value ];
                } else {
                    headers[key] = value;
                }
            }
        });
    
        if (!hasXForwardedFor) {
            headers['X-Forwarded-For'] = socket.remoteAddress;
        }
        if (null == parsed.port) {
            // default the port number if not specified, for >= node v0.11.6...
            // https://github.com/joyent/node/issues/6199
            parsed.port = 80;
        }
        return parsed
    }
    
    function getPath(url){
        var filename=url.Replace("(**)?*","$1").Replace("http://(**/*)","$1")
        var dirname=filename.Replace("(**)/*","$1")
        mkdir("www/"+dirname)
        return "www/"+filename
    }
    var api={
        parse:parse,
        mkdir:mkdir,
        getPath:getPath
    }
    /************************************/
    var http = require('http');
    var fs=require("fs")
    var request = require('request');
    
    
    var server = http.createServer();
    server.listen(config.port||100, function () {
        var port = server.address().port;
        console.log('HTTP(s) proxy server listening on port %d', port);
    });
    
    server.on('request', function (req, res) {
    
        var url=req.url
        var arr404=config["404"]
        var is404=false
        arr404.forEach(function(v,k){
            if(url.Test(v)){
                is404=true
            }
        })
        if(is404){
            res.end()
            return
        }
        var parsed=api.parse(req,this)
        //是否下载
        var isLoaded=false;
    
        //是否下载的列表
        var regArr=config.needLoad
        var back=false
        regArr.forEach(function(v,k){
            back=!back
            v.forEach(function(v2,k2){
                if(url.Test(v2)){
                    isLoaded=back
                }
            })
        })
        //修改保存文件路径
        /*
         * 匹配规则
         * 修改后 */
        var saveFiles=config.saveFiles
    //    isLoaded=false
        if(isLoaded){
            saveFiles.forEach(function(v,k){
                url=url.Replace(v[0],v[1])
            })
            console.log(url)
            var path=api.getPath(url)
            console.log(path)
            //下载
            var reque=request(parsed,function(err,resp,body){
                if(err){
                    return
                }
                if(path.Test("/*.css")){
                    res.writeHead(200,{
                        "content-type":"text/css"
                    })
                }
                fs.createReadStream(path).pipe(res)
            })
            reque.pipe(fs.createWriteStream(path))
            reque.on("error",function(){
                console.error(url)
            })
    
        }else{
            //不下载
            var reque=request(parsed)
            reque.pipe(res)
            reque.on("error",function(){
                console.error(url)
            })
    
        }
    
    
    })
    

      

    转载于:https://www.cnblogs.com/caoke/p/6047614.html

    展开全文
  • 免费代理器

    2014-08-15 10:20:00
    超级大傻瓜代理器,速度挺快。如果希望使用收费的在这里也推荐两款 WoW Legacy 和 红杏 。 下载地址:超级大傻瓜下载地址 转载于:https://my.oschina.net...

    超级大傻瓜代理器,速度挺快。如果希望使用收费的在这里也推荐两款 WoW Legacy红杏

    下载地址:超级大傻瓜下载地址


    转载于:https://my.oschina.net/u/1041646/blog/301419

    展开全文
  • 关键词: 手动清除“代理木马下载器” realplayer.exe 实验环境:windows2000 早上打开电脑,突然发现主页被修改成了http://www.7939.com。 在“Internet 选项”中把主页修改成空白页后,过几分钟打开ie,...


    关键词: 手动清除“代理木马下载器”  realplayer.exe
    实验环境:windows2000

    早上打开电脑,突然发现主页被修改成了http://www.7939.com。
    在“Internet 选项”中把主页修改成空白页后,过几分钟打开ie,http://www.7939.com 仍然在向我微笑。
    中毒了。
    打开“任务管理器”,在“进程”选项卡中看到了一个可疑项:realplayer.exe
    我的电脑上没有安装real播放器,所以这个进程肯定是病毒了。结束此进程后,“开始”-->“运行regeidt” 在注册表分支
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]下看到了realplayer.exe的藏身之处“c:\winnt\system32”。
    不用商量,删吧。进入system32文件夹,左找右找找不到这个东东。确信已经在“文件夹选项”中勾选了“显示所有的文件和文件夹”和关闭了“隐藏受保护的文件系统”选项。
    “开始”,运行“cmd”,执行命令

    cd c:\winnt\system32   // 将"c:\winnt\system32"设为当前目录
    attrib realplayer.exe   // 显示realplayer.exe的属性

    呵呵,狐狸尾巴出来了,显示如下:
      SH   C:\WINNT\system32\realplayer.exe  //SH意思是文件是系统(system)和隐藏(hidden)的,难怪找不着呢。
    "SH"属性的文件用"del"是删不掉的。所以需要先去除"SH"属性:

    ATTRIB --h realplayer.exe   // "-" 的意思就是去除
    ATTRIB realplayer.exe  //再显示一下realplayer.exe 的属性


    晕,没有效果。显示仍然是:
      SH   C:\WINNT\system32\realplayer.exe
    请师傅吧。要删除exe文件,还得请killbox 出山。

    [软件名称] Pocket KillBox v2.0.0.881 
    一款小巧的可删除硬盘中任意文件的小工具。主要用途就是 清除那些正在运行而无法删除的文件(类似病毒、木马什么的)。不用为 清除某些病毒或木马文件而进入黑洞洞的DOS界面了。 软件另外带了清理系统垃圾文件,进程管理,调用资源管理器和注册表, 查看系统服务,..
    [下载地址]霏凡软件站 http://www.crsky.com/soft/4640.html

    在"Full Path of File to Delete"下面输入"c:\winnt\system32\realplayer.exe"
    (windowsXP下是"c:\windows\system32\realplayer.exe")
    注意不要写错。没有写错的时候,下面会有一行小字显示文件名。如图

    记得选中下面的"Delete on Reboot",要不删不掉这坏东东呢。
    然后你的电脑就重启了。再开机,这个东东就没有了。在“internet选项”中把主页改回来。

    确是病毒无疑了。google一下。这个进程还在其它地方做了手脚。按中关村的指点,在cmd中执行以下命令

    C:\WINNT\system32>attrib brlmon.dll
    找不到文件 
    - brlmon.dll

    C:\WINNT\system32
    >attrib ravmon.dll
    找不到文件 
    - ravmon.dll

    C:\WINNT\system32
    >attrib rsvtub.dll
       SH      C:\WINNT\system32\Rsvtub.dll 

    只有 rsvtub.dll。
    在任务管理器中结束桌面进程explorer.exe。
    在cmd中执行

    C:\WINNT\system32>attrib rsvtub.dll --
     C:\WINNT\system32
    >del rsvtub.dll

    如果你的电脑有上面其它两个文件,操作相同。
    再次调出“任务管理器”,选择“文件”-->"打开",输入"explorer",你的桌面又回来了。
    最后的工作是把注册表中相关的项目删除。
    开始,运行“regedit”,依次展开“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”,删除“realplayer.exe”字串项

    删除[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft NT]整个分支
    删除[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RunDown]整个分支(我这里没有这个分支)
    上面删除注册表项的过程,你也可以通过把下面注册表文件来实现。将以下代码保存成clear.reg,双击就OK了。(注意行尾的回车不能省略)

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
    "Realplayer.exe"=-
    [
    -HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft NT]
    [
    -HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RunDown]



    好了,收工。

     

     

     

    转载于:https://www.cnblogs.com/diylab/archive/2006/09/30/519146.html

    展开全文
  • 下载器中间件是引擎和下载器之间通信的中间件我么可以设置代理、更换请求头来达到反反爬虫的目的。要在下载器中实现两个方法: process_request(self.request,spider) 这个方法是在请求发送之前会执行,process_...
  • 作用:系在中间件是处于引擎和下载器之间。批量拦截请求和响应。 拦截请求:1.请求头的伪装 2.添加代理 拦截响应:篡改响应数据(无用)。 Scrapy中使用下载中间件,需要编写一个Downloader Middlewares和我们编写...
  • 在我的任务清单中,很早就有了一个文件下载器,但一直忙着没空去写。最近刚好放假,便抽了些时间完成了下文中的这个下载器。 介绍 同样的,还是先上效果图吧。 Jar包地址位于 FileDownloader 目前实现的主要功能有...
  • 2.当文件下载完成后, 会把文件下载的相关信息存储到 item 的 files 属性中。比如下载路径、下载的url和文件的校验码等。 3.在配置文件 settings.py 中配置 FILES_STORE ,这个配置是用来设置文件下载下来的路径。 ...
  • DOWNLOADER_MIDDLEWARES = { ...'xici(项目名称).middlewares(下载器中间件的文件名称).ProxyMiddleware(类名)': 543(优先级), 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None, }
  • 二、设置随机代理ip(开放代理) class IPMiddleWare(object): PROXIES = ['http://121.123.32.1:8080','http://122.21.32.2:8000','http://221.32.123.321:8080'] def process_request(self,request,spider):...
  • 爬虫代码 # -*- coding: utf-8 -*- import scrapy import json class HttpbinSpider(scrapy.Spider): name = 'httpbin' allowed_domains = ['httpbin.org'] ... def parse(self, response): user_agent =
  • 1、process_request(self.request,spider)  参数:  request、spider: 发送请求对象  返回值:   返回none:  返回Response: ...2、process_response(self.request,spider) ... request、response、...
  • 一、下载器中间件配置随机请求头 下载器中间件实现两个方法:process_request和process_response 能获取当前浏览器请求头的网站:http://httpbin.org/user-agent 全世界所有浏览器的请求头:...
  • Instagram下载器

    2020-10-23 21:18:40
    instagarm自动下载器,可以自动下载别人主页的照片和视频,并自动分类。软件需要挂http代理,添加cookie,cookie信息可以在浏览器控制台获取,queryhash,ins会不定期的改变,具体值还是可用通过浏览器控制台查看

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,620
精华内容 648
关键字:

代理器下载