python案例练习合集
作者:阿南-ana 发布时间:2021-03-04 15:30:27
标签:python,案例
一、python批量查询练习
通过接口批量查询该ip是否属于指定接口:
import requests
import json
if __name__ == "__main__":
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3100.0 Safari/537.36'
}
# 获取源IP
with open('./ip.txt','r') as fp:
list_ip = fp.readlines()
# 处理每个ip后面对\n
for li in list_ip:
li = li.rstrip()
url="http://www.xxxx.com/api/query_ip?ip={0}&flag=1&key=cdbcbdhbhcbdhcbhdbchdbchdbch&user=root".format(li)
#
result_json = requests.get(url, headers=headers)
# print(result_json.json())
# 获取到数据和未获取到数据最终打印对结果要不一样
if result_json.json()['total'] == 0:
cw_url="http://www.sss.cn/api/query_ip?ip={0}&flag=1&key=fjdifjdifncjdnjcndjhfjndjnjdhfjdhj&user=root".format(li)
cw_result_json = requests.get(cw_url,headers=headers)
print("XXX科技CMDB未发现该资产 ->",end="")
if cw_result_json.json()['total']==0:
print(li + " <- SSSSCMDB未发现该资产")
print(result_json.json(),cw_result_json.json())
else:
print("该资产属于SSSSCMDB:")
ip1 = cw_result_json.json()['data'][0]['ip1']
company = cw_result_json.json()['data'][0]['company']
profile_center = cw_result_json.json()['data'][0]['profit_center']
platform = cw_result_json.json()['data'][0]['platform']
leader = cw_result_json.json()['data'][0]['leader']
email = cw_result_json.json()['data'][0]['email']
print(ip1 + ' ' + company + ' ' + profile_center + ' ' + platform + ' ' + leader + ' ' + email)
else:
ip1 = result_json.json()['data'][0]['ip1']
company = result_json.json()['data'][0]['company']
profile_center = result_json.json()['data'][0]['profit_center']
platform = result_json.json()['data'][0]['platform']
leader = result_json.json()['data'][0]['leader']
email = result_json.json()['data'][0]['email']
print(ip1 + ' ' + company + ' ' + profile_center + ' ' + platform + ' ' + leader + '
二、python批量请求(GET | POST)
本案例为普通的测试案例,主要用于测试通过get
请求和post
请求产生响应是否一致,主要针对响应码为200的结果进行输出,没有什么技术含量!
#-*- coding:utf-8 -*-
import requests
def apiRequest():
header = {
'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3100.0 Safari/537.36',
'Cookie': 'JSESSIONID=E65BD767F22CBEFE30BAF33D84A59072',
'Referer':'http://aaa.xxx.com',
'Content-Type':'application/json;'
}
with open('url.txt','r',encoding='utf-8') as fp:
urls = fp.readlines()
for li in urls:
get_response = requests.get(url=li,headers=header)
post_response = requests.post(url=li, headers=header)
if get_response.status_code == 200 or post_response.status_code == 200:
print(li.strip()+"请求测试结果如下:")
print("GET请求测试结果",get_response.content)
print("POST请求测试结果", post_response.content)
if __name__ == '__main__':
apiRequest()
三、python列表转集合练习
#处理字符串重复问题—本练习用于fuzz
字典去重
if __name__ == '__main__':
with open('E:/xilie/web/fuzzDicts-master/apiDict/api.txt','r') as fp:
list1 = fp.readlines()
list2 = set(list1)
print("去重前的条数:"+str(len(list1)))
print(type(list2), "去重后的条数"+str(len(list2)))
with open('E:/xilie/web/fuzzDicts-master/apiDict/new_api.txt','w+') as fp1:
for li1 in list2:
fp1.write(li1)
print("已将去重内容写入新文件!!!")
来源:https://blog.csdn.net/weixin_42380348/article/details/120494003


猜你喜欢
- html5带给我们的不仅仅是更多语义丰富的标签,还有更多更牛逼的特性,比如“离线存储”。 对于台式电脑来说,或者它并没有带来什么惊喜,但是对
- 这篇文章主要介绍了基于js实现抽红包并分配代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可
- # 判断三角形类型def triangle(a,b,c): if a>0 and b>0 and c>0: &
- 前言使用python做一个加密资料的软件,可加密应用程序、文件、压缩包等多种文件格式,不可直接加密文件夹,可以先用压缩包打包在加密。加密后的
- Excel的最合适列宽(openpyxl)Python的Pandas模块是处理Excel的利器,尤其是加工保存Excel非常方便,但是唯独想
- 在使用Python做脚本的话,有两个库可以使用,一个为PyUserInput库,另一个为pyautogui库。就本人而言,我更喜欢使用pya
- CASE 表达式分为简单表达式与搜索表达式,其中搜索表达式可以覆盖简单表达式的全部能力,我也建议只写搜索表达式,而不要写简单表达式。简单表达
- 启动IDLE后会打开Python shell窗口。当键入代码 时,它会基于Python语法提供自动缩进和代码着色功能。使用IDLE中的Pyt
- 引言在Python中但凡提到的赋值运算符其实讲的就是等号=,在编程语言中的等号含义再也不是数学中的1+1=2的这种等号,真实含义是将=右侧的
- Chrome的CSS支持程度 :Green / √ means current support.Orange / Δ means that
- 本文实例讲述了django框架模板语言使用方法。分享给大家供大家参考,具体如下:模板功能作用:生成html界面内容,模版致力于界面如何显示,
- 本文实例讲述了Python实现的质因式分解算法。分享给大家供大家参考,具体如下:本来想实现一个其它的基本数学算法问题,但是发现在实现之前必须
- 对于Vue.js来说,如果你想要快速开始,那么只需要在你的html中引入一个<script>标签,加上CDN的地址即可。但是,这
- pytorch构建双模型第一部分:构建"se_resnet152","DPN92()"双模型impo
- python数组和矩阵先创建一个一维数组直接定义一个数组:a = [1,2,3,4,5]b = ['a','c
- MySQL查询字段为空或者为null判断为nullselect * from table where column is nul
- 众所周知IE6不支持position:fixed,这个bug与IE6的双倍margin和不支持PNG透明等bug一样臭名昭著。前些天我做自己
- 什么叫模板继承呢在我的理解就是:在前端页面中肯定有很多页面中有很多相同的地方,比如页面顶部的导航栏,底部的页脚等部分,这时候如果每一个页面都
- 昨天去面试,百度题果然不一样,笔试我就蒙了,现在能记住两道题,笔试:1、title和alt 区别2、三列布局 左边裂固定宽度左对齐,右边列固
- iniconf博主前两天在写一个小的go语言项目,想找一个读取ini格式配置和的三方库,在网上找了一圈感觉都不是很好用, 使用起来非常的奇怪