HTTP代理的调用方式

198 篇文章 0 订阅
189 篇文章 0 订阅

隧道互联网网络的发展进步,网络爬虫业务的需求,HTTP代理被大家认知与熟悉。HTTP代理IP商业多出了许多。
由于各种行业的需要,http代理成了大家不可缺少的一部分。HTTP代理不仅适用于爬虫业务,其他许多业务也同行适合,例如:SEO优化,发帖,刷量,抢购的等许多业务都可以使用隧道转发的爬虫代理。
隧道爬虫程序调用代理方式不同,使用的代理产品当然也不一样。HTTP代理其实分为两种使用方式,一种是常见的API提取的HTTP代理。API模式是广为熟知的使用方式,调用方式也很简单。当然在许多代理商提供的API提取的代理中,有隧道IP和外网IP组合成一个动态IP池,仅供大招使用API方式提取使用。
API隧道IP:
隧道IP其实就是反向IP,计算机通过专线网络链接固定代理服务器(固定IP),固定服务器再通过随机端口将数据通过其他线路服务器向目标网站(服务器)转发。因此目标网站(服务器)只能看到随机线路的IP,不可能看到固定代理服务器IP,实际效果与公网IP(外网IP)一样,并且网络更加稳定。
外网IP返回的就是IP:端口都不一样。
第二种使用方式就是隧道转发
隧道转发爬虫代理:
通过固定云代理服务地址,建立专线网络链接,代理平台自动实现毫秒级代理IP切换,保证了网络稳定性和速度,避免爬虫客户在代理IP策略优化上投入精力。
使用隧道转发爬虫代理相关代码demo:


```java
const http = require("http");
const url = require("url");

// 要访问的目标页面
const targetUrl = "http://httpbin.org/ip";


const urlParsed = url.parse(targetUrl);

// 代理服务器(产品官网 www.16yun.cn)
const proxyHost = "t.16yun.cn";
const proxyPort = "36600";

// 生成一个随机 proxy tunnel
var seed = 1;
function random() {
    var x = Math.sin(seed++) * 10000;
    return x - Math.floor(x);
}
const tunnel = random()*100;

// 代理验证信息
const proxyUser = "username";
const proxyPass = "password";

const base64    = new Buffer.from(proxyUser + ":" + proxyPass).toString("base64");

const options = {
    host: proxyHost,
    port: proxyPort,
    path: targetUrl,
    method: "GET",
    headers: {
        "Host": urlParsed.hostname,
        "Proxy-Tunnel": tunnel,
        "Proxy-Authorization" : "Basic " + base64
    }
};

http.request(options, function (res) {
    console.log("got response: " + res.statusCode);
    res.pipe(process.stdout);
}).on("error", function (err) {
    console.log(err);
}).end();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值