首页>代理ip知识与免费资源>正文
HTTP代理ip账号密码授权教程
发布日期:2019/12/10 10:37:52    阅读量:12908


代理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);
}
}
}


推荐阅读上一篇【代理ip如何生成API链接及使用?