首页>比特动态>HTTP代理ip账号密码授权教程
HTTP代理ip账号密码授权教程

  代理ip最常用的授权方式绑定ip白名单,另外一种就是账号+密码授权方式。


  在什么场景下使用账号+密码授权?

  1)未能绑定出口上网ip授权白名单;

  2)授权ip没有固定输出端口;

  3)动态拨号vps服务器,ip无法固定;

  4)需要不同的电脑或虚拟主机使用;

  以上几种情况适合使用账号+密码授权方式。


  账号+密码授权方式在不同的场景下使用教程:

  一:在谷歌浏览器使用账号+密码授权情况下:

  

HTTP代理ip账号+密码授权教程.jpg


  二:在 Python使用账号+密码授权的情况下:

  import urllib2

  #设置你的HTTP代理包含用户名密码

  proxy='账号:密码@ip:port'

  #你要访问的网址

  url = 'http://www.ip138.com/'

  opener = urllib2.build_opener()

  if url.lower().startswith('https://'):

  opener.add_handler(urllib2.ProxyHandler({'https' : proxy}))

  else:

  opener.add_handler(urllib2.ProxyHandler({'http' : proxy}))

  request = urllib2.Request(url)

  response = opener.open(request)

  content = response.read()


  三:在PHP使用账号+密码授权的情况下:

  <?php

  function curlFile($url,$proxy_ip,$proxy_port,$loginpassw)

  {

  //$loginpassw = '账号:密码';

  //$proxy_ip = 'ip';

  //$proxy_port = 'port';

  //$url = 'http://www.ip138.com';

  $ch = curl_init();

  curl_setopt($ch,CURLOPT_URL,$url);

  curl_setopt($ch,CURLOPT_HEADER,0);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

  curl_setopt($ch,CURLOPT_PROXYPORT,$proxy_port);

  curl_setopt($ch,CURLOPT_PROXYTYPE,'http');

  curl_setopt($ch,CURLOPT_PROXY,$proxy_ip);

  curl_setopt($ch,CURLOPT_PROXYUSERPWD,$loginpassw);

  $data = curl_exec($ch);

  curl_close($ch);

  return $data;

  }

  ?>


  四:在VC Win32 Wininet使用账号+密码授权的情况下:

  #include <windows.h>

  #include <wininet.h>

  #include <stdio.h>

  #pragma comment(lib, "wininet.lib")

  int main(int argc, char *argv[], char *env[])

  {

  char url[] = "http://www.ip138.com/";

  char proxyinfo[] = "ip:port";

  char usernm[] = "帐号";

  char passwd[] = "密码";

  char text[8192] = {};

  DWORD dwReadSize = 0;

  BOOL bOK = FALSE;

  HINTERNET hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_PROXY, proxyinfo, NULL,

  0);

  HINTERNET hUrl = InternetOpenUrl(hInternet, url, NULL, 0, 0, NULL);

  bOK = InternetSetOption(hUrl, INTERNET_OPTION_PROXY_USERNAME, usernm,

  strlen(usernm));

  bOK = InternetSetOption(hUrl, INTERNET_OPTION_PROXY_PASSWORD, passwd,

  strlen(passwd));

  bOK = (BOOL)InternetReadFile(hUrl, text, sizeof(text), &dwReadSize);

  printf(text);

  return 0;

  }

  五:在C#使用账号+密码授权的情况下:

  using System;

  using System.Net;

  namespace ProxyTest

  {

  class Program

  {

  static void Main(string[] args)

  {

  WebClient wc = new WebClient();

  wc.Proxy = new WebProxy("ip", port);

  wc.Proxy.Credentials = new NetworkCredential("帐号", "密码");

  string text = wc.DownloadString("http://www.ip138.com");

  Console.WriteLine(text);

  }

  }

  }