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资源一段时间内只允 ...
随机推荐
- 因为td设置relative导致td的border问题
在ff下因为td设置relative导致td的border问题:其实是个老问题了~碰到了拿出来记录下 td 中添加如下样式 background-clip: padding-box
- 把 hhkb 压在mac pro上面用
不知道你们有没有这种感觉, 用惯了外接键盘,然后切换到笔记本自带键盘的时候 手指会有不适应感? 直接 hhkb 放2018款的mac pro上总会压着原来的键盘, 而且我也不想直接禁用掉笔记本自带的键 ...
- [PowerShell]–Checking the version of Office installed
– Create and initialize the object $objExcel = New-Object -ComObject Excel.Application – Query the v ...
- php strtok()函数用法,及使用时遇到的问题
strtok()函数:用来将一段字符串分割为子字符串 strtok(string $str, string $token) strtok( string $token) //仅第一次调用$str,以后 ...
- 【我的Android进阶之旅】解决SVN Cleanup错误: Failed to run the WC DB work queue associated with
错误描述 在Android Studio中点击VCS向下箭头使用SVN Update功能更新代码的时候,报错如下所示: 错误描述信息: Error:svn: E155037: Previous ope ...
- git学习------>如何用git log命令来查看某个指定文件的提交历史记录
有时候接手一份新代码时,看到某些文件的改动,但不清楚这个改动的作者和原因,想查看该文件的具体提交历史记录. 今天一个同事是这样做的,直接敲git log命令,然后再使用vim命令的搜索关键字的方法来查 ...
- 安装MySQL版本为mysql-installer-community-5.7.17.msi
双击MySQL安装包, 勾选复选框,点击下一步: 选择仅仅服务器模式,点击下一步: 直接点击执行: 执行完成,点击下一步: 确认配置,点击下一步: 输入用户名和密码,点击下一步: 默认选项,点击下一步 ...
- zz Qt下 QString转char*和char []
以下内容为转载:http://www.cnblogs.com/Romi/archive/2012/03/12/2392478.html -------------------------------- ...
- jquery关于select框的取值和赋值
jQuery("#select_id").change(function(){}); // 1.为Select添加事件,当选择其中一项时触发 var checkValue ...
- Python Parameter Passing Note
我刚刚开始学习Python, Python中的参数传递总是让我很困惑.我写了4个简单的Demo,帮助我理解Python的参数传递,希望对大家都能有所帮助. 0: def change(x): x = ...