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("已將去重內容寫入新文件!!!")
到此這篇關於python案例學習合集的文章就介紹到這瞭,更多相關python案例內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python Http發送請求淺析
- Python實現爬取某站視頻彈幕並繪制詞雲圖
- Python爬蟲實戰之虎牙視頻爬取附源碼
- Python爬蟲之requests庫基本介紹
- python爬蟲之爬取百度翻譯