# yangqiao

#查询
'''
f=open("C:\\aaaaaaaaaaaaa\\haproxy.txt", "r", encoding="utf-8")
haproxy_list = f.readlines()
website_address = input("请输入要查询的网址:")
website_address = "backend " + website_address
lenth=len(haproxy_list)
#print(website_address)
i=0
j=1
for line in haproxy_list:
if website_address in line and line.startswith("backend"):
print(haproxy_list[i])
j=i+1
while "backend" not in haproxy_list[j] :
print(haproxy_list[j])
j+=1
if j >= lenth:
break
elif j == lenth and i == lenth:
print("你输入的内容查询不到")
i+=1
if i == lenth and j==1:
print("你输入的内容查询不到")
f.close() #删除
f=open("C:\\aaaaaaaaaaaaa\\haproxy.txt", "r", encoding="utf-8")
f_new=open("C:\\aaaaaaaaaaaaa\\haproxy_new.txt", "a+", encoding="utf-8")
website_address = input("请输入要删除的网址:")
website_address=eval(website_address)
print(website_address) for line in f:
if website_address["bakend"] in line and line.startswith("backend"):
pass
elif website_address["record"]["server"] in line:
pass
else:
f_new.write(line) f.close()
f_new.close()
''' #新增
f=open("C:\\aaaaaaaaaaaaa\\haproxy.txt", "r", encoding="utf-8")
f_new=open("C:\\aaaaaaaaaaaaa\\haproxy_new.txt", "a+", encoding="utf-8")
haproxy_list = f.readlines()
temple=[]
print(haproxy_list)
lenth=len(haproxy_list)
website_address = input("请输入要新增的网址:")
website_address=eval(website_address)
print("lenth:",lenth)
i=0
j=0
k=0
for line in haproxy_list:
if website_address["backend"] in line and line.startswith("backend") :
#print(haproxy_list[i])
j=i+1
print(j)
print(haproxy_list[j])
#while "backend" not in haproxy_list[j] and j <= lenth-1:
while j <= lenth-1:
if "backend" not in haproxy_list[j]:
if website_address["record"]["server"] in haproxy_list[j]:
j+=1
else:
temple.append(haproxy_list[j])
k+=1
j+=1
#print("ddddddddddddd")
i=j
#print(temple)
elif i <= lenth-1: f_new.write(haproxy_list[i]) if j==0 and i== lenth-1 :
f_new.write("backend "+website_address["backend"]+"\n")
f_new.write(" " + "server " + website_address["record"]["server"] + " weight " + website_address["record"][ "weight"] + " maxconn " + website_address["record"]["maxconn"] + "\n")
i += 1 print(temple)
f.close()
f_new.close() lenth_temple=len(temple)
if lenth_temple != 0: with open("C:\\aaaaaaaaaaaaa\\haproxy_new.txt", "a+", encoding="utf-8") as f_w:
sss="backend "+website_address["backend"]+"\n"
f_w.write(sss)
for line in temple:
f_w.write(line)
zzz=str(" "+"server "+website_address["record"]["server"]+" weight "+website_address["record"]["weight"]+" maxconn "+website_address["record"]["maxconn"]+"\n")
f_w.write(zzz)

Traceback (most recent call last):
  File "C:/Users/lcl/PycharmProjects/untitled/day1/修改haproxy配置文件.py", line 105, in <module>
    zzz=str("        "+"server "+website_address["record"]["server"]+" weight "+website_address["record"]["weight"]+" maxconn "+website_address["record"]["maxconn"]+"\n")
TypeError: must be str, not int

这样相加,因为里面有INT类型,导致最后zzz不是字符串类型,需要先转换成str类型,在拼接

作业-haproxy配置文件的增删查(有一个bug不知道咋改)的更多相关文章

  1. [ python ] 项目:haproxy配置文件增删改查

    1. 开发要求 实现对 haproxy.cfg 增删改查操作 2. 程序介绍 # 作者:hkey # 博客地址:https://www.cnblogs.com/hukey/p/9288279.html ...

  2. Python3.5 day3作业二:修改haproxy配置文件。

    需求: 1.使python具体增删查的功能. haproxy的配置文件. global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 lo ...

  3. python之haproxy配置文件操作(第三天)

    作业: 对haproxy配置文件进行操作 要求: 对haproxy配置文件中backend下的server实现增删改查的功能 一.这个程序有二个版本 1. python2.7版本见haproxy_py ...

  4. 6.在MVC中使用泛型仓储模式和依赖注入实现增删查改

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-operations-using-the-generic-repository-pat ...

  5. 4.在MVC中使用仓储模式进行增删查改

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-using-the-repository-pattern-in-mvc/ 系列目录: ...

  6. hibernate基础增删查改简单实例

    hibernate 基础理论知识网上很多,可以百度和google.这里不做多的介绍,以一个User表来开展例子 建一个web-project 我这里用了junit单元测试环境来进行增删查改的测试,别的 ...

  7. 一套手写ajax加一般处理程序的增删查改

    倾述下感受:8天16次驳回.这个惨不忍睹. 好了不说了,说多了都是泪. 直接上代码 : 这个里面的字段我是用动软生成的,感觉自己手写哪些字段太浪费时间了,说多了都是泪 ajax.model层的代码: ...

  8. ASP.NET动态的网页增删查改

    动态页面的增删查改,不多说了,直接上代码 跟前面的一般处理程序一样我上用的同一套三层,只是UI层的东西不一样,在纠结着要不要重新在上一次以前上过的代码: 纠结来纠结去,最后我觉得还上上吧,毕竟不上为我 ...

  9. SSH框架的多表查询和增删查改 (方法一)中

    原创作品,允许转载,转载时请务必标明作者信息和声明本文章==>http://www.cnblogs.com/zhu520/p/7774144.html   这边文章是接的刚刚前一遍的基础上敲的  ...

随机推荐

  1. 选择性重传ARQ基本原理

    发送发可以连续发送多个数据包,接收方对于无差错的数据包进行正常接收,对于有差错数据包进行丢弃并发送NAKn进行差错反馈,对于n号数据包之后正确到达的数据包进行缓存,直到收到重发的,正确的n号数据包,再 ...

  2. 解决Caused by: java.lang.IllegalArgumentException: Result Maps collection does not contain value for com.geek.dao.ContentDao.Integer

    mybatis报错:Caused by: java.lang.IllegalArgumentException: Result Maps collection does not contain val ...

  3. WPF popup自动关闭

    var tileMore = new Tile { Height = , Width = , Background = , , )), Title = "更多...", }; ti ...

  4. 常用oracle可重复执行的脚本模板

    为保证脚本的可重复执行以及丢失,涉及到数据库环境的移植等,就会使用可重复执行脚本,此处仅提供相关一些模板 说明下:该脚本需要在命令窗口执行,而不是在SQL窗口执行 创建序的脚本 /** * 作者:zk ...

  5. css中换行与不换行的样式

    常见的css样式分为换行与不换行两种需求 1.不换行显示省略号 text-overflow:ellipsis; white-space:normal; 2.换行自适应 word-break: brea ...

  6. ssh 无秘钥登录

    三台centos 一台服务器192.168.2.152 一台客户端192.168.2.142 一台客户端192.168.2.151 (1)产生无密钥 [root@localhost ~]#  ssh- ...

  7. 图片合并成PDF,两个PDF的合并

    需求: 将多张手机照片合并成一个PDF,并于另一个成型PDF合并 过程: 使用全能扫描王处理一遍,拆剪掉多余部分,并提高亮度增加文字对比度 合并: 使用Faststone Capture合并图片即可. ...

  8. 上传文件代码报错,java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory

    2018-09-11 11:11:08.235 ERROR 14352 --- [nio-8080-exec-5] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : ...

  9. adb 安装安卓包

    1.搭建安卓环境,或者下载安装ADB工具 2.adb version检查是否安装成功 3.用数据线连上手机,并在手机中打开USB调试模式,使用adb devices 查看链接的设备 这样表示成功连接上 ...

  10. js Number string

    Number string number Js只有一种数字类型(包括整型,浮点型) 极大或极小的可用科学计数法来表示.(7.7123e+1) 所有js数字均为64位 Js所有的数字都存储为浮点型 小数 ...