python 获取探针页面,自动查询公司出口
在一些渗透当中,我们需要批量探针出口来达到我们的目的。
所以就有了这个丑陋简洁的小脚本。
#!/usr/bin/env python
#-*- coding:utf- -*- import sys
import threading
import httplib
import re
import time class Myclass(threading.Thread):
def __init__(self,host,path):
threading.Thread.__init__(self)
self.host = host
self.path = path
self.result = [] def run(self):
if "https://" in self.host:
conn = httplib.HTTPSConnection(self.host,,None,None,False,)
else:
conn = httplib.HTTPConnection(self.host,,False,) i_headers = {"User-Agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-Us; rv:1.9.1) Gecko/20090624 Firefox/3.5","Accept": "text/plain"}
conn.request('GET',self.path,headers = i_headers)
r1 = conn.getresponse() text = r1.read()
text1 = text.lstrip() #size = text.count("\n")
test = open('ip.txt','a+')
test.write(text1) b = open("ip.txt",'r')
c = open("ids.txt",'w')
for line in b.readlines():
m = re.search(r'(IP:\d*.\w*.\d*.\d*.\d*)',line)
mm = m.group()
owa = mm.replace("IP:","").strip().replace("\n","")
self.result = owa.replace("\n","")
c.write(self.result)
c.write("\n")
#print "write success"
g = open("ids.txt",'r')
for lines in g.readlines():
getsip = lines.replace("\n","")
try:
conns = httplib.HTTPConnection("bgp.he.net",,False,)
except Exception:
print "[-]:connection out time"
break
else:
conns.request('GET','/ip/%s' % getsip,headers = i_headers)
r2 = conns.getresponse()
texts = r2.read()
try:
line_split = re.search(r'(<u>.*\d+\D+.*.title=)',texts)
obj = line_split.group()
print "server:",obj.replace("<u>","").replace("</u>","").replace("\n","").replace("(<a href=\"","search domain:").replace("\" title=","").replace("/dns/","") except Exception, e:
pass
time.sleep()
#print line_split def main():
if len(sys.argv) < :
print "[*]:Usage python info.py 127.0.0.1 /path"
sys.exit()
Mythread = Myclass(sys.argv[],str(sys.argv[]))
Mythread.start() if __name__ == "__main__":
main()
python test.py ip /探针/1.txt
而1.txt页面为:
IP:xxx.xxx.xxx.xxx OS:Windows x Language:xxx Browser:FireFox 2x.0 Referer:xxxxx Cookies: Time:201x-0x-xx 05:43:51 AM id:xxxxx
因为查询的网站有限制。所以1个线程足以。
代码写的太粗糙了,见笑了。
python 获取探针页面,自动查询公司出口的更多相关文章
- python 获取excel数据 自动登陆
import xlrdimport timeimport unittestfrom selenium import webdriver class u8819(unittest.TestCase): ...
- Python获取web页面信息
import sys, urllib2 # req = urllib2.Request(sys.argv[1]) req = urllib2.Request('http://www.sina.com. ...
- servlet自动获取前端页面提交数据
servlet自动获取前端页面jsp提交数据 以下是本人在学习过程中,因前端页面提交参数过多,后台servlet封装实体类过于麻烦而写的一个工具类,应用于jsp/servlet数据提交后,基于MVC+ ...
- 【2017-06-29】在登录页面自动返回上次请求页面、Js获取table中的行数与列数
一.在登录页面自动返回上次请求页面 Request.UrlReferrer比如 if (Request.UrlReferrer != null) { //如果能获取来路地址 Response.Redi ...
- C# -- WebClient自动获取web页面编码并转换
C# -- WebClient自动获取web页面编码并转换 抽个时间,写篇小文章,最近有个朋友,用vb开发一个工具,遇到WebClient获取的内容出现乱码,可惜对vb不是很熟悉,看了几分钟vb的语法 ...
- python爬虫的页面数据解析和提取/xpath/bs4/jsonpath/正则(1)
一.数据类型及解析方式 一般来讲对我们而言,需要抓取的是某个网站或者某个应用的内容,提取有用的价值.内容一般分为两部分,非结构化的数据 和 结构化的数据. 非结构化数据:先有数据,再有结构, 结构化数 ...
- Django中获取参数(路径,查询,请求头,请求体)
一.通常HTTP协议向服务器传参有几种途径 : 提取URL的特定部分,如/weather/shanghai/2018,可以在服务器端的路由中用正则表达式截取: 查询字符串(query string), ...
- Python中实现异步并发查询数据库
这周又填了一个以前挖下的坑. 这个博客系统使用Psycopy库实现与PostgreSQL数据库的通信.前期,只是泛泛地了解了一下SQL语言,然后就胡乱拼凑出这么一个简易博客系统. 10月份找到工作以后 ...
- python登录csdn并自动评论下载资源脚本
功能 1.自动登录csdn 2.查找未评论的资源并自动评论 用到的库 1.python自带的requests,获取以及发送网页数据 2.python自带的time,用作休眠,csdn资源一段时间内只允 ...
随机推荐
- iOS Search bar 输入空字符串也可以搜索
Search bar delegate - (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar { UITextField *sea ...
- delphi xe学习随意记录
学习来源(根据他们的资料整理) 论坛:http://www.coder163.com(有视频) 博客:http://del.cnblogs.com/(万一的博客) 1.1.1 命名规范的概述 1 ...
- 并发编程8 线程的创建&验证线程之间数据共享&守护线程&线程进程效率对比&锁(死锁/递归锁)
1.线程理论以及线程的两种创建方法 2.线程之间是数据共享的与join方法 3.多线程和多进程的效率对比 4.数据共享的补充线程开启太快 5.线程锁 互斥锁 同步锁 6.死锁现象和递归锁 7.守护线程 ...
- C++ 动态内存 栈堆
C++ 动态内存_w3cschool https://www.w3cschool.cn/cpp/cpp-dynamic-memory.html
- Dictionary里使用struct,enum做key
首先看下Dictionary的源码 public void Add (TKey key, TValue value) { if (key == null) throw new ArgumentNull ...
- 《深入理解Linux网络技术内幕》阅读笔记 --- 邻居子系统
1.封包从L3至L2的传送过程如下所示: 本地主机的路由子系统选择L3目的地址(下一个跃点). 根据路由表,如果下一个跃点在同一个网络中,邻居层就把目的L3地址解析为跃点的L2地址.这个关联会被放入缓 ...
- django中的setting全局变量的导入
需求:在py文件中导入settings.py中的变量BASE_DIR settings.py文件 import os # Build paths inside the project like thi ...
- select * 为什么不好? limit 1 为什么好? --mysql SQL语句优化
问题一: Select * from student; 这种语句不好 我的理解:根据Innode存储引擎以及网上的各种资料所说的innodb的B+树索引结构可以分析出,当在非聚集索引列上搜索若用s ...
- Github的markdwon如何使用表情符(Emoji)?表情包大全
如输入 :smile: 会输出
- PHP基础学习代码案例
<?php print 'hello world ! '; echo '<br/>'; ?> <?php $number="16"; $number2 ...