本文只简单介绍一下代理ip的获取和使用,并没有介绍java爬虫。
有空再单独开一个系列说爬虫吧。
一、代理ip简介
为了防止IP被网站封掉而不能继续爬取页面,爬虫程序需要不断的更换IP地址等信息,来伪装成一个真实用户。
代理IP的分类:
注:关于代理ip的分类信息来源于互联网。
关于代理IP的话 也分几种 透明代理、匿名代理、混淆代理、高匿代理
1、透明代理(Transparent Proxy)
REMOTE_ADDR = Proxy IP
HTTP_VIA = Proxy IP
HTTP_X_FORWARDED_FOR = Your IP
透明代理虽然可以直接“隐藏”你的IP地址,但是还是可以从HTTP_X_FORWARDED_FOR来查到你是谁。
2、匿名代理(Anonymous Proxy)
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = proxy IP
匿名代理比透明代理进步了一点:别人只能知道你用了代理,无法知道你是谁。
3、混淆代理(Distorting Proxies)
REMOTE_ADDR = Proxy IP
HTTP_VIA = Proxy IP
HTTP_X_FORWARDED_FOR = Random IP address
如上,与匿名代理相同,如果使用了混淆代理,别人还是能知道你在用代理,但是会得到一个假的IP地址,伪装的更逼真。
4、高匿代理(Elite proxy或High Anonymity Proxy)
REMOTE_ADDR = Proxy IP
HTTP_VIA = not determined
HTTP_X_FORWARDED_FOR = not determined
可以看出来,高匿代理让别人根本无法发现你是在用代理,所以是最好的选择。
二、获取代理ip
可以写一个小爬虫来爬取这些免费ip代理网站上的代理IP和端口号。
注意:可用率真的很低,需要再次筛选后才能使用。
分享几个免费IP代理网站:
1、西刺代理
http://www.xicidaili.com/
2、66免费代理网
http://www.66ip.cn/
3、快代理
http://www.kuaidaili.com/free/
4、站大爷(不好用,端口号是图片,不易爬取。不过据说IP的质量还不错)
http://ip.zdaye.com/
免费代理ip网站有很多,包括国内的和国外的,但是因为免费,所以可用率低到不行,因此获取之后再筛选是免不了的。
ip代理可以从各种网站上抓取,放到数据库中。
当一个ip地址被封时(检测response中的状态码),从数据库中取出一条新的ip使用。
同时数据库中的ip代理要定时检测是否可用,不可用的ip代理要及时删除。
判断ip代理是否可用:
使用该ip代理来访问一个网址,比如百度的首页,如果response中的状态码为200.说明可以正常访问,则该ip代理是可用的,否则是不可用的。
三、在java爬虫中使用代理ip
使用代理IP的完整实现代码:
package cn.mwxu16.DaiLi_IP;
import java.io.IOException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
/*
* Demo1
* 使用代理IP
*/
public class Demo1 {
public static void main(String[] args) throws Exception{
CloseableHttpClient httpClient = HttpClients.createDefault(); // 创建一个HTTPClient对象
HttpGet httpget = new HttpGet("http://www.baidu.com";); // 创建HTTP的get请求实例
//==========设置代理IP
HttpHost proxy = new HttpHost("58.243.207.87",9858 ); //设置代理IP的地址和端口号
RequestConfig config =RequestConfig.custom().setProxy(proxy).build();
httpget.setConfig(config);
//===================
// 设置请求头信息,模拟浏览器,这里使用火狐浏览器的User-Agent
httpget.setHeader("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0");
CloseableHttpResponse response = null; // 创建CloseableHttpResponse对象
response = httpClient.execute(httpget);
HttpEntity entity = response.getEntity(); // 获取返回实体(即返回的网页源码)
System.out.println(EntityUtils.toString(entity, "utf-8")); //输出网页源码
closeAll(response, httpClient); //释放资源
}
// 关闭所有资源
public static void closeAll(CloseableHttpResponse response, CloseableHttpClient httpClient) {
// 关闭资源
try {
response.close(); // 关闭response
} catch (IOException e) { // IO异常
e.printStackTrace();
}
try {
httpClient.close(); // 关闭httpClient
} catch (IOException e) { // IO异常
e.printStackTrace();
}
}
}
相关资讯
相关文章内容简介
1 java爬虫IP代理免费获取
本文只简单介绍一下代理ip的获取和使用,并没有介绍java爬虫。有空再单独开一个系列说爬虫吧。一、代理ip简介为了防止IP被网站封掉而不能继续爬取页面,爬虫程序需要不断的更换IP地址等信息,来伪装成一个真实用户。代理IP的分类:注:关于代理ip的分类信息来源于互联网。关于代理IP的话 也分几种 透明代理、匿名代理、混淆代理、高匿代理1、透明代理(Transparent Proxy)REMOTE_ADDR = Proxy IPHTTP_VIA = Proxy IPHTTP_X_FORWARDED_FOR = Your IP透明代理虽然可以直接“隐藏”你的IP地址,但是还是可以从HTTP_X_FORWARDED_FOR来查到你是谁。2、匿名代理(Anonymous Proxy)REMOTE_ADDR = proxy IPHTTP_VIA = proxy IPHTTP_X_FORWARDED_F [阅读全文]
推荐阅读
24
2019-03
游戏封号与使用IP代理有关系吗?
游戏封号与使用IP代理有关系吗?是有的。游戏被封号的理由千千万,但是与IP有什么关系呢?
22
2019-11
使用代理ip,怎么验证是否成功呢?
浏览器搜索引擎,访问网页是我们最常用的,无论是在工作上还是在生活上都要使用到,有很多用户在浏览访问页面时,不像留下访问的痕迹以及自己使用的真实ip,想要隐藏自己的真实ip,增
04
2019-07
怎么样使用代理IP更有效?
也许,您正遇到了这样的尴尬问题,访问一个网站正在查询资料,突然发现IP被限制了。这个时候,您灵机一动,想到了使用代理IP来解决这个难题,于是,您开启了寻找优质代理IP的艰难旅程,
18
2019-03
代理IP告诉你想要学好大数据有什么技巧?
先在的大数据技术人员备受各大企业及用人单位的青睐,因此参加大数据培训学习大数据的人员也在不断的增加,但是关于学习大数据的技巧很多人不是很清楚,纷纷询问如何才能快速的学好大
03
2019-09
用代理IP玩游戏能防止封号吗?
很多用户在玩游戏的时候,如果稍不小心,帐号会被封,特别是多登陆帐号,被封的几率更大。现在有很多工作室或者个人通过游戏赚钱,这些是需要使用游戏多开的,所以很多人需要用换IP软
13
2019-09
HTTP代理IP的使用盲点你知道吗?
在我们日常应用的代理服务中,HTTP代理IP可以说是最常见的,也是最被普通网民所接受的。虽然经常使用,但是对于这种代理方式,许多人仍然存在一定使用误区,在这里小编就为大家消除这些
热门文章
注意: 严禁一切违规违法的业务,一经发现直接封帐号
黑洞HTTP是国内免费企业级高质量HTTP代理IP服务平台,专业提供国内ip代理,ip代理软件,API提取,爬虫代理,代理服务器等业务,深受广大客户好评
Powered by wanchen tech. © | 粤ICP备18047396号-6 广州万宸软件科技有限公司http代理 版权所有