栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python创建测试数据脚本

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python创建测试数据脚本

Python测试数据脚本

# coding=UTF-8
import random
import time

url_paths = [
    "www/2",
    "www/1",
    "www/6",
    "www/4",
    "www/3",
    "pianhua/130",
    "toukouxu/821"
]

status_code = [404, 302, 200]

ip_slices = [132, 156, 124, 10, 29, 167, 143, 187, 30, 100]

http_referers = [
    "https://www.baidu.com/s?wd={query}",
    "https://www.sogou.com/web?qu={query}",
    "http://cn.bing.com/search?q={query}",
    "https://search.yahoo.com/search?p={query}"
]

search_keyword = [
    "猎场",
    "快乐人生",
    "极限挑战",
    "我的体育老师",
    "幸福满院"
]


# ip地址 29.124.10.132
def sample_ip():
    # 从元组ip_slices中随机选4个
    slice = random.sample(ip_slices, 4)
    # 集合中的元素以.相连
    return ".".join([str(item) for item in slice])

# "www/2",
def sample_url():
    # 从url_paths 中随机取一个元素,并将其值get出来
    return random.sample(url_paths, 1)[0]

#  404
def sample_status():
    # random.sample(status_code, 1) 是一个含一个元素的集合, 取这个集合中的值.
    return random.sample(status_code, 1)[0]

#
def sample_referer():
    # 获得(0,1)之间的随机数,如果大于0.2,则返回-
    if random.uniform(0, 1) > 0.2:
        return "-"
    refer_str = random.sample(http_referers, 1)
    # print refer_str[0]
    query_str = random.sample(search_keyword, 1)
    # print query_str[0]
    return refer_str[0].format(query=query_str[0])


# 产生log
def generate_log(count=10):
    time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
    f = open("C:\Users\zhengmin\Desktop\logs\test.txt", "w+")
    # f = open("/home/centos/log/log", "a+")
    while count >= 1:
        query_log = "{ip}t{localtime}t"GET {url} HTTP/1.0"t{referece}t{status1}".format(ip=sample_ip(),
                                                                                              url=sample_url(),
                                                                                              status1=sample_status(),
                                                                                              referece=sample_referer(),
                                                                                              localtime=time_str)
        # print query_log
        f.write(query_log + "n")
        count = count - 1;


if __name__ == '__main__':
    generate_log(100)
    print("1111")
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/923752.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号