Tag:proxy

Tag (proxy)'s result:

关于代理和隐藏IP的整理

//以前了解了下代理和隐藏IP的一些内容,整理下发出来,算是一个总结,部分内容来源于网络,LSA整理而得。 代理服务器实际上是一台服务器,介于浏览器和你要访问的网站之间。当你通过代理服务器上网浏览时,浏览器不是直接到Web服务器中取回网页,而是首先向代理服务器发出请求,由代理服务器到要访问的网站上取回网页,然后再传送给你的浏览器。 1.代理服务器有超级匿名代理、普通匿名代理和透明代理三种。 其中超级匿名代理又有一级匿名、二级匿名代理之分。假如你用一级匿名代理连上某个服务器,服务器端的网管是不会知道你用了代理的、而且你的IP也查不出来!因为这种代理服务器是真正的匿名代理,它不会改变你的request fields(报文),使服务器端看起来就像有个真正的客户浏览器在访问它。目前一级匿名代理在网上很少,这种代理服务器资源很是珍贵! 至于二级匿名代理,其安全性就不如一级匿名代理了,使用二级匿名代理上网,服务器的网管虽然查不出你的IP,但是却知道你用了代理! 普通匿名代理包括三级和四级匿名代理,这类代理服务器也能隐藏你的真实IP,但是会更改你的request fields,因此服务器端也会知道你用了代理!不过这种代理会剥离你的部分信息(就好比防火墙的stealth mode),使服务器端探测不到你的操作系统版本和浏览器版本。 透明代理(五级匿名代理):这种代理会改编你的request fields(报文),并传送你的真实IP,因此假如你用这种代理上网,就不能隐藏你的IP。 2.按代理服务器的用途分类 代理服务器可以分成以下几类: Http代理(端口一般为80、8080、3128、50050等):主要代理浏览器访问网页。 SSL代理(标准端口为443):支持最高128位加密强度的http代理,可以作为访问加密网站的代理。 FTP代理(端口一般为21、2121):代理客户机上的ftp软件访问ftp服务器。 Telnet代理(端口一般为23):代理通信机的telnet,用于远程控制。 POP3代理(端口一般为110):代理客户机上的邮件软件用pop3方式收邮件。 Socks代理(标准端口为1080):是全能代理,支持多种协议,包括http、ftp请求及其它类型的请求。它分socks 4 和socks 5两种类型,socks 4只支持TCP协议而socks 5支持TCP/UDP协议,还支持各种身份验证机制等协议。 此外,还有TUNNEL代理、文献代理、教育网代理、Ssso代理、Flat代理等,限于篇幅,这里就不展开介绍了。 3. HTTP_HOST 网页服务器名称 REMOTE_ADDR 服务器识别出来的客户端IP HTTP_X_FORWARDED_FOR和HTTP_VIA 后面如果不为“none”, 就证明被服务器识别出使用了代理,代理服务器的地址就是后面的数值。 HTTP_ACCEPT_LANGUAGE – 浏览器所使用的语言 HTTP_USER_AGENT 浏览器类型版本以及操作系统信息。   一、没有使用代理:   REMOTE_ADDR = 你的 IP HTTP_VIA = (none) HTTP_X_FORWARDED_FOR = (none)   二、使用透明代理   REMOTE_ADDR = 代理服务器 IP HTTP_VIA = 代理服务器 IP HTTP_X_FORWARDED_FOR = 你的真实 IP   被访问的网站不仅知道你用了代理,并且知道代理的ip和你的真实ip。   三、使用普通匿名代理   REMOTE_ADDR = 代理服务器 IP HTTP_VIA = 代理服务器 IP HTTP_X_FORWARDED_FOR = 代理服务器 IP   隐藏了真实的IP,但是被访问的网站知道你使用了代理。   四、使用欺骗性匿名代理   REMOTE_ADDR = 代理服务器 IP HTTP_VIA = 代理服务器 IP HTTP_X_FORWARDED_FOR = 随机的 IP   被访问的网站虽然知道你使用了代理,但是探测到的ip是代理随机生成的一个虚假的IP。   五、使用高匿名代理   REMOTE_ADDR = 代理服务器 IP HTTP_VIA = 没数值或不显示 HTTP_X_FORWARDED_FOR = 没数值或不显示   被访问的网站会认为有真实的IP在访问它,探测不出你的真实IP,也不知道你在用代理。   另外,在“Your IP or Proxy Server Name”下面,如果是只有主机名或者只有ip地址的话,就是说是高匿名 一些工具 使用代理猎手ProxyHunter 到网站上去下载 proxysm代理超人 花刺代理验证1.8 网隐一键通 多用LastPass,10minutemail,TOR,I2P,tormail,i2pmail等工具/网站善于保护自己 善用Perfectmoney,Bitcoin等匿名货币 。 http://www.cybersyndrome.net/env.cgi   inurl:prxjdg.cgi intitle:ProxyJudge V2.  

python爬取代理脚本

最近写了一个爬取代理的python脚本,参考了一下别人的代码,有了大量代理就方便了,这是v1.0版本,采用了多线程(一页用一个线程爬代理),顺便熟悉一下队列和bs4,感觉bs4的确很强大而且方便很多。还有很多地方不是很完善,日后有空会继续完善这个脚本。 功能描述:爬取www.xicidaili.com的代理,并去1212.ip138.com/ic.asp验证代理的可用性,最后把可用代理写入useful_proxies.txt文件。 代码: #coding:utf-8 import requests from bs4 import BeautifulSoup as bs import re import Queue import threading import time import optparse url = ‘http://www.xicidaili.com/nn/’ headers = {‘User-Agent’:’Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; InfoPath.3; rv:11.0) like Gecko’} class Proxy_collection(threading.Thread): #继承Thread实现多线程 def __init__(self, que): threading.Thread.__init__(self) #重用父类Thread的__init__() self._que = que def run(self): while not self._que.empty(): url = self._que.get() r = requests.get(url, headers=headers, timeout=5) soup = bs(r.content, ‘lxml’, from_encoding=’utf-8′) bqs = soup.find_all(name=’tr’, attrs={‘class’:re.compile(r’|[^odd]’)}) for bq in bqs: us = bq.find_all(name=’td’) try: self.proxies_confirm(str(us[5].string), str(us[1].string), str(us[2].string)) #取协议:ip:端口去验证 except Exception,e: #print e pass def proxies_confirm(self, type_self, ip, port): ip_dic = {} ip_dic[type_self.lower()] = ip + ‘:’ + port r = requests.get(‘http://1212.ip138.com/ic.asp’, headers=headers, proxies=ip_dic, timeout=5) result = re.findall(r’\d+\.\d+\.\d+\.\d+’, r.content) result_ip = ”.join(result) #转为字符串 if ip == result_ip: print type_self + ‘—‘ + ip + ‘:’ + port + ‘ is useful!!!\n’ with open(‘useful_proxies.txt’, ‘a’) as f: f.write(type_self.lower() + ‘—‘ + ip + ‘:’ + port + ‘\n’) if __name__ == ‘__main__’: thread = [] que =……