HTTP代理作用

laical · · 224 次点击 · 开始浏览    置顶
HTTP代理在网络爬虫中很常见。HTTP代理分为正向代理和反向代理。 HTTP代理一般用于网络爬虫,数据分析,抢购等业务。网络爬虫通过HTTP代理向互联网发出请求从而获取相关数据。 HTTP代理的作用 1、网站翻墙 很多国外的网站的防火墙都会限制国内的IP进行访问,这时候就需要通过HTTP代理来进行翻墙之后才能正常访问采集相关数据。 2、匿名访问 互联网的网站会限制网络爬虫,爬虫工作者不愿意让目标网站识别出自己本机IP,这时候就需要亿牛云高匿代理IP去进行访问,隐藏自己的真实的本机IP。 3、代理上网 可以利用HTTP代理服务器进行联网 4、提高上网速度 许多HTTP代理服务器都有缓存,HTTP代理可以直接发出请求传输数据,提高浏览的速度 爬虫程序中设置HTTP代理 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(); HTTP代理也有好坏之分,如果你需要在采集数据中要稳定高效的采集,建议使用高匿的自动转发的爬虫代理。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:1006366459

224 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传