当前位置: 首页 > wzjs >正文

网站活动推广方案个人想建个网站怎么弄

网站活动推广方案,个人想建个网站怎么弄,免费在线看片,常州住房和城乡建设局网站利用 ECB 加密 json并压测接口,输出测试报告 需求:代码:运行结果: 需求: 调用 /api/GDPostFeiYouTemu/NotMailTemuOrderPush生成一个 随机数 赋值给orderCode和referenceNumber(且需要唯一)ECB…

利用 ECB 加密 json并压测接口,输出测试报告

  • 需求:
  • 代码:
  • 运行结果:

需求:

  1. 调用 /api/GDPostFeiYouTemu/NotMailTemuOrderPush
  2. 生成一个 随机数 赋值给orderCode和referenceNumber(且需要唯一)
  3. ECB 加密 Json 参数
  4. 可配置的 持续调用时间和调用次数
  5. 生成测试报告,并保存在文件夹中

代码:

import json
import random
import string
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad
from base64 import b64encode
import requests
from concurrent.futures import ThreadPoolExecutor
import time
import logging
from datetime import datetime# 配置日志
logging.basicConfig(level=logging.INFO,format='%(asctime)s - %(levelname)s - %(message)s',handlers=[logging.FileHandler('request_log.log'),logging.StreamHandler()]
)# 加密函数(保持不变)
def encrypt_data(data, key):key = key.encode('utf-8')[:16]  # AES-128cipher = AES.new(key, AES.MODE_ECB)ct_bytes = cipher.encrypt(pad(data.encode('utf-8'), AES.block_size))return b64encode(ct_bytes).decode('utf-8')# 生成唯一随机字符串(添加时间戳增强唯一性)
def generate_unique_random_string(length=10):timestamp = datetime.now().strftime("%f")  # 微秒级时间戳chars = ''.join(random.choices(string.ascii_uppercase + string.digits, k=length))return f"{timestamp}_{chars}"# 构造请求数据(优化唯一性)
def prepare_request_data():base_data = {"head": {"method": "batch_create_order","version": "1.0.0","requestTime": "2022-07-20 10:06:31"},"uaccount": "xxxxx","body": [{"mailCode": "TEST201072000MAILCODE","orderCode": "TE_" + generate_unique_random_string(8),"length": 20.3,"width": 18.1,"height": 6.3,"weight": 0.53,"receiverCompName": "AMZ-tt","receiverName": "Kaila Gilam 123456","receiverProv": "Atlantico","receiverCity": "Barranquilla","receiverArea": "Fayetteville","receiverHouseNo": "15","receiverAddress": "138 Lowery Dr 138 Lowery Dr","receiverAddress2": "apto 2B","receiverMobile": "","receiverTel": "3013357358","receiverEmail": "yh267lps4r1207d@us.shipping.temuemail.com","receiverPostCode": "110121","senderCompName": "CAN109","senderName": "CAN101","senderEngProv": "guangdong","senderEngCity": "guangzhou","senderAddress": "baiyun helong","senderPostCode": "80000","senderTel": "123456456","senderMobile": "147258369","countryCode": "CO","countryName": "哥伦比亚","productCode": "COL-X","tariffType": "ddp","vatNumber": "5236523","taxNo": "3923982135","remark": "","referenceNumber": "BG-" + generate_unique_random_string(8),"declValue": "50","declCurrency": "RMB","cardType": "2","cardNo": "48452153625425361252","inner": [{"gName": "加厚压缩袋","gEngName": "compression bag","innerContext": "","innerQty": 5,"innerWeight": 0.22,"innerPrice": 3.5,"currencyCode": "USD","madePlace": "CN","hscode": "3923290000","model": "无","gBrand": "无","originCountry": "","remark": "","sku": "100010","material": "塑料","purpose": "物品","taxNo": "3923","salesAddress": "https://suijimimashengcheng.bmcx.com/","distribution": "compression","electricityFlag": "","unitCode": "11","secUnitCode": "","innerDeclValue": "25","innerDeclCurrency": "RMB"}]}]}return base_data# 发送请求(添加重试机制和日志)
def send_request(url, key):try:data = prepare_request_data()encrypted = encrypt_data(json.dumps(data), key)start_time = time.time()response = requests.post(url, json={"data": encrypted}, timeout=10)duration = time.time() - start_timelog_msg = f"Status: {response.status_code} | Duration: {duration:.2f}s | Order: {data['body'][0]['orderCode']}"if response.status_code != 200:logging.error(log_msg)return (False, response.status_code)else:logging.info(log_msg)return (True, response.status_code)except Exception as e:logging.error(f"Request failed: {str(e)}")return (False, str(e))# 压力测试主函数
def stress_test():# 配置参数config = {"url": "http://txxxxxx.xxxx.com/api/GDPostFeiYouTemu/NotPush","key": "bJtR4ZSNK4p","threads_per_second": 1,"duration_seconds": 1}success_count = 0failure_count = 0total_requests = config["threads_per_second"] * config["duration_seconds"]logging.info(f"Starting stress test: {total_requests} total requests")with ThreadPoolExecutor(max_workers=50) as executor:  # 稍微多些工作线程防止堆积futures = []start_time = time.time()# 创建每分钟任务for _ in range(config["duration_seconds"]):# 提交每秒的任务批for _ in range(config["threads_per_second"]):future = executor.submit(send_request,config["url"],config["key"])futures.append(future)# 精确控制时间间隔time.sleep(1 - (time.time() - start_time) % 1)# 统计结果for future in futures:result = future.result()if result[0]:success_count += 1else:failure_count += 1# 生成测试报告end_time = time.time()test_duration = end_time - start_timereport = f"""======== Stress Test Report ========Total Requests: {total_requests}Successful: {success_count}Failed: {failure_count}Success Rate: {(success_count / total_requests) * 100:.2f}%Test Duration: {test_duration:.2f} secondsAvg Throughput: {total_requests / test_duration:.2f} req/s===================================="""logging.info(report)if __name__ == "__main__":stress_test()

运行结果:

D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\.venv\Scripts\python.exe D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\优化非邮下单接口.py 
2025-03-11 16:27:35,452 - INFO - Starting stress test: 1 total requests
2025-03-11 16:27:37,474 - INFO - Status: 200 | Duration: 2.02s | Order: TE_452975_72S1AYET
2025-03-11 16:27:37,475 - INFO - ======== Stress Test Report ========Total Requests: 1Successful: 1Failed: 0Success Rate: 100.00%Test Duration: 2.02 secondsAvg Throughput: 0.49 req/s====================================进程已结束,退出代码为 0
http://www.dtcms.com/wzjs/596426.html

相关文章:

  • 静态网页建站购物网站后台管理系统
  • 达州住房和城乡建设厅网站wordpress主题inn
  • 如何做汽车的创意视频网站设计南宁网站建设费用
  • 建设网站需要几个步骤企业网络建站
  • 香奈儿电子商务网站建设策划书一键制作自己的app软件
  • 济南mip网站建设公司企企管理系统平台
  • Wordpress垂直类目站模版怎么在百度推广
  • ppt模板免费下载素材小清新苏州优化网站建设
  • 江苏宜安建设有限公司 网站网站的设计方案在哪里
  • 网站建设需要找网站建设公司做吗电商的推广方式有哪些
  • 中文单页面网站模板wordpress ad widget
  • 免费网页模板素材网站如何进网站
  • 网站建设设计设计公司哪家好wordpress 为分类定模板
  • 网站设计建设 公司国企门户网站建设方案
  • 网站域名备案代理wordpress app无法登陆
  • 海淀团队组建网站代运营公司收费
  • 重庆建站管理系统信息做教程网站如何查用户搜索
  • 一个帮你赚钱的网站是谁做的广告网站数据库默认地址
  • 亿唐为什么2005年做虚拟网站提高网站排名软件
  • 游戏建设网站海宁市建设局官方网站6
  • 初学平面设计从哪学起seo的关键词无需
  • 深圳哪里可以做网站门户定制网站建设公司
  • 潮州市建设局官方网站超低价的郑州网站建设
  • 网站建设大致步骤如何在网站做淘宝页面
  • 灵感网站wordpress sns
  • 河南seo网站多少钱深圳网站设计九曲
  • 现在还有什么网站简述营销网站建设策略
  • 永久域名网站外贸网站做流量
  • 营销创意网站漳州手机网站建设
  • 网站速度优化方案网站分享到朋友圈