批量获取及验证HTTP代理的Python脚本

发布时间 - 2026-01-11 00:47:33    点击率:

1. 在扫号人人网时,我遇到单个账号错误两次,强制要求输入验证码,而对方并未实施IP策略。

我采用维护10万(用户名,密码) 队列的方式来绕过验证码。具体的做法是,当某个用户名、密码组合遇到需要验证码,就把该破解序列挂起,放到队列尾部等待下次测试,继续破解其他账号密码。

这样就可以保证2/3的时间都在进行正常破解和扫号。

2. 在破解美团网某系统账号时,我遇到了单个IP访问有一定限制,请求频率不可过快。于是我挂了72个 HTTP代理来解决这个问题。 看似每个IP的请求都正常,但其实从整个程序上看,效率还是挺可观的。

本篇我发出自己抓HTTP的脚本片段,其实只有几行。匿名代理是从这里抓取的:http://www.xici.net.co/nn/

首先获取代理列表 :

from bs4 import BeautifulSoup
import urllib2


of = open('proxy.txt' , 'w')

for page in range(1, 160):
  html_doc = urllib2.urlopen('http://www.xici.net.co/nn/' + str(page) ).read()
  soup = BeautifulSoup(html_doc)
  trs = soup.find('table', id='ip_list').find_all('tr')
  for tr in trs[1:]:
    tds = tr.find_all('td')
    ip = tds[1].text.strip()
    port = tds[2].text.strip()
    protocol = tds[5].text.strip()
    if protocol == 'HTTP' or protocol == 'HTTPS':
      of.write('%s=%s:%s\n' % (protocol, ip, port) )
      print '%s=%s:%s' % (protocol, ip, port)

of.close()

接着验证代理是否可用,因为我是用于破解美团网系统的账号,因此用了美团的页面标记:

#encoding=gbk
import httplib
import time
import urllib
import threading

inFile = open('proxy.txt', 'r')
outFile = open('available.txt', 'w')

lock = threading.Lock()

def test():
  while True:
    lock.acquire()
    line = inFile.readline().strip()
    lock.release()
    if len(line) == 0: break
    protocol, proxy = line.split('=')
    headers = {'Content-Type': 'application/x-www-form-urlencoded',
      'Cookie': ''}
    try:
      conn = httplib.HTTPConnection(proxy, timeout=3.0)
      conn.request(method='POST', url='http://e.meituan.com/m/account/login', body='login=ttttttttttttttttttttttttttttttttttttt&password=bb&remember_username=1&auto_login=1', headers=headers )
      res = conn.getresponse()
      ret_headers = str( res.getheaders() ) 
      html_doc = res.read().decode('utf-8')
      print html_doc.encode('gbk')
      if ret_headers.find(u'/m/account/login/') > 0:
        lock.acquire()
        print 'add proxy', proxy
        outFile.write(proxy + '\n')
        lock.release()
      else:
        print '.',
    except Exception, e:
      print e

all_thread = []
for i in range(50):
  t = threading.Thread(target=test)
  all_thread.append(t)
  t.start()
  
for t in all_thread:
  t.join()

inFile.close()
outFile.close()


# 验证 HTTP代理 Python脚本  # Python程序中设置HTTP代理  # Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例  # Python request设置HTTPS代理代码解析  # 对python使用http、https代理的实例讲解  # Python代码实现http/https代理服务器的脚本  # python爬虫http代理使用方法  # Python异步爬虫requests和aiohttp中代理IP的使用  # python使用aiohttp通过设置代理爬取基金数据简单示例  # 解决python异步框架aiohttp无法使用本地代理问题  # python做http代理请求的项目实践  # 验证码  # 我是  # 都在  # 两次  # 有一定  # 是从  # 用了  # 上看  # 挂了  # 过快  # 解决这个问题  # 就可以  # 挂起  # 把该  # 几行  # 下次  # find  # trs  # table  # find_all 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  *服务器网站为何频现安全漏洞?  网站制作软件有哪些,制图软件有哪些?  Mybatis 中的insertOrUpdate操作  免费视频制作网站,更新又快又好的免费电影网站?  中国移动官方网站首页入口 中国移动官网网页登录  Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  如何做网站制作流程,*游戏网站怎么搭建?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  北京企业网站设计制作公司,北京铁路集团官方网站?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Laravel怎么在Controller之外的地方验证数据  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  php json中文编码为null的解决办法  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  如何在阿里云虚拟服务器快速搭建网站?  Laravel如何优化应用性能?(缓存和优化命令)  大型企业网站制作流程,做网站需要注册公司吗?  EditPlus中的正则表达式 实战(2)  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  bootstrap日历插件datetimepicker使用方法  Laravel如何使用Gate和Policy进行授权?(权限控制)  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  微信公众帐号开发教程之图文消息全攻略  Laravel如何实现API版本控制_Laravel版本化API设计方案  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  如何快速搭建高效简练网站?  Laravel中的Facade(门面)到底是什么原理  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  如何在腾讯云免费申请建站?  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  如何在IIS中配置站点IP、端口及主机头?  JS弹性运动实现方法分析  如何快速使用云服务器搭建个人网站?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何将凡科建站内容保存为本地文件?  如何打造高效商业网站?建站目的决定转化率  如何在阿里云高效完成企业建站全流程?  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  如何为不同团队 ID 动态生成多个“认领值班”按钮