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

drupal做新闻网站/查看域名每日ip访问量

drupal做新闻网站,查看域名每日ip访问量,如何用 python 做网站,景德镇网站建设程序要求: 1),启动程序,首页面应该显示成如下格式: 欢迎来到博客园首页 1:请登录 2:请注册 3:文章页面 4:日记页面 5:评论页面 6:收藏页面 7:注销 8:退出程序2),用户输入选项,3~6选项必须在用户登录成功之后…

程序要求:

1),启动程序,首页面应该显示成如下格式:

欢迎来到博客园首页
1:请登录
2:请注册
3:文章页面
4:日记页面
5:评论页面
6:收藏页面
7:注销
8:退出程序
2),用户输入选项,3~6选项必须在用户登录成功之后,才能访问成功。
3),用户选择登录,用户名密码从register文件中读取验证,三次机会,没成功则结束整个程序运行,成功之后,可以选择访问3~6项,访问页面之前,必须要在log文件中打印日志,
日志格式为-->用户:xx 在xx年xx月xx日 执行了 %s函数,访问页面时,页面内容为:欢迎xx用户访问评论(文章,日记,收藏)页面
4),如果用户没有注册,则可以选择注册,注册成功之后,可以自动完成登录(完成自动登录+5 分),然后进入首页选择。
5),注销用户是指注销用户的登录状态,使其在访问任何页面时,必须重新登录。
6),退出程序为结束整个程序运行。

 

  1 import time
  2 
  3 
  4 status_dic = {
  5     'username': None,     #设置一个登录用户
  6     'status': False,      #用于后面验证是否登录,登录状态
  7 }
  8 
  9 
 10 
 11 def login(*args):   #登录模块
 12     with open("login.txt", encoding="utf-8", mode="r") as f:
 13         login_list = f.readlines()
 14     if args:                          #判断用户是否登录
 15         status_dic['username'] = args[0]
 16         status_dic['status'] = True
 17         return True
 18     else:
 19         count = 0
 20         while count < 3:
 21             if status_dic['status'] == False:
 22                 username = input("请输入登录用户名:").strip()
 23                 for i in login_list:
 24                     if username == eval(i)["name"]:     #对用户名进行检查,看是否存在,不存在直接走for循环的else判断,让用户进行注册
 25 
 26                         password = input("请登录用户密码:").strip()
 27                         if password == eval(i)["password"]:  #判断密码输入是否正确
 28 
 29                             print("login successfully")
 30                             status_dic['username'] = username
 31                             status_dic['status'] = True
 32                             return True
 33                         else:
 34                             print("您还有%s次机会" % int(2 - count))  #3次机会验证,都错误会返回登录首页
 35                             count += 1
 36                             break
 37 
 38                 else:
 39                     print("检查用户名未注册...")
 40                     y = input("是否注册(yes/no):").strip()
 41                     if y == "yes" or y =="y":
 42                         return register()
 43 
 44                     elif y == "no" or y == "n":
 45                         return home_page()
 46                     else:
 47                         print("输入错误...")
 48         else:
 49             print("错误太多次啦...")
 50 
 51 
 52 def register():     #注册模块
 53     tag = True
 54     f1 = open("login.txt", encoding="utf-8", mode="r")
 55     login_list = f1.readlines()
 56     print("账号注册".center(50,"#"))
 57     while tag:
 58         username = input("请输入您注册的用户名:").strip()
 59         for i in login_list:
 60             if username == eval(i)["name"]:
 61                 print("用户名已经存在,请重新输入")
 62                 f1.close()
 63                 break
 64         else:
 65             password = input("请输入您注册的密码:").strip()
 66             f2 = open("login.txt",encoding="utf-8",mode="a")
 67             f2.write("{}\n".format({"name": username,"password": password}))
 68             tag = False
 69             print("注册成功")
 70             f2.close()
 71             return login(username, password)
 72 
 73 
 74 def wrapper(func):  #登录验证的装饰器
 75     def inner1():
 76         if status_dic['status']:
 77             ret = func()
 78             return ret
 79         else:
 80             print("请先进行登录")
 81             if login():
 82                 ret = func()
 83                 return ret
 84     return inner1
 85 
 86 
 87 def log(func):   #记录日志的装饰器
 88     def inner2():
 89         localtime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
 90         f = open("access.log",encoding="utf-8",mode="a+")
 91         f.write("用户:{},在{}执行了{}函数\n".format(status_dic['username'],localtime,func.__name__))
 92         f.close()
 93         ret = func()
 94         return ret
 95     return inner2
 96 
 97 
 98 @wrapper   #article_page = wrapper(article_page) --> article_page=wrapper(inner2)
 99 @log  #article_page = log(article_page)  article_page = inner2
100 def article_page():
101     print("欢迎%s来到文章页面" % status_dic['username'])
102 
103 @wrapper   #diary_page = wrapper(diary_page)
104 @log
105 def diary_page():
106     print("欢迎%s来到日记页面" % status_dic['username'])
107 
108 
109 @wrapper
110 @log
111 def comment_page():
112     print("欢迎%s来到评论页面" % status_dic['username'])
113 
114 @wrapper
115 @log
116 def collect_page():
117     print("欢迎%s来到收藏页面" % status_dic['username'])
118 
119 
120 def log_out():
121     print("%s用户已注销" % status_dic['username'])
122     status_dic['username'] = None
123     status_dic['status'] = False
124 
125 
126 def Quit_exit():
127     print("退出程序...")
128     return exit()
129 
130 dic = {
131     1: login,
132     2: register,
133     3: article_page,
134     4: diary_page,
135     5: comment_page,
136     6: collect_page,
137     7: log_out,
138     8: Quit_exit
139 }
140 
141 
142 
143 def home_page():
144     while True:
145         str = '''##########欢迎来到博客园首页###########
146     1: {}
147     2: {}
148     3: {}
149     4: {}
150     5: {}
151     6: {}
152     7: {}
153     8: {}
154         '''.format('请登录', '请注册', '文章页面', '日记页面', '评论页面', '收藏页面', '注销', '退出程序')
155         print(str)
156         bianhao = input("请输入选择的序列号:").strip()
157         if bianhao.isdigit():
158             bianhao = int(bianhao)
159             if 0 < bianhao <= 8:
160                 dic[bianhao]()
161             else:
162                 print("输入编号不在范围内")
163         else:
164             print("输入的序列号只能是数字")
165 
166 if __name__ == '__main__':
167     home_page()

 

转载于:https://www.cnblogs.com/watchslowly/p/8877148.html

http://www.lbrq.cn/news/1405963.html

相关文章:

  • 长沙做网站建设公司排名/免费建设网站平台
  • 电商网站建设的步骤/百度关键词流量查询
  • 网站怎么做301跳转/公众号软文怎么写
  • 重庆给商家企业做网站/深圳网络推广代理
  • 如何创建一个网站链接/windows优化大师有用吗
  • 做的网站百度搜不到/唐山seo
  • 电子商务网站设计代做/域名查询网站
  • 交通运输局网站建设方案/seo自动优化软件下载
  • 深圳设计网站开发/qq推广引流网站
  • 赣州优化/百度seo关键词优化电话
  • 大学生兼职网站的融资方案/锦州网站seo
  • 漯河做网站的/军事新闻头条
  • 郴州网站建设较好的公司/纯注册app拉新挣钱
  • java网站开发新技术/百度销售
  • 深圳做义工的网站/今日新闻摘抄二十条
  • 成功的营销型网站设计特点/收录网站查询
  • 用户界面/东莞seo外包公司哪家好
  • 武汉光谷疫情最新消息/seo查询排名软件
  • 临沂哪里有做网站/网站如何注册
  • 建设平台类网站需要多少钱/查图百度识图
  • 做网站为什么要域名 解析绑定/十大经典案例
  • 古典网站建设公司/产品推广软文500字
  • 2022年免费网站软件下载/sem工作原理
  • 沈阳网站优化推广方案/最新的新闻 今天
  • 最优的锦州网站建设/pc网站优化排名
  • app程序/整站关键词排名优化
  • 网站开发 避免 字段变化 代码/企业网络营销方案策划
  • 个人做电影网站赚钱吗/求几个微信推广平台
  • 玉溪网站建设网站建设/网页搜索引擎
  • 网站建设玖金手指排名14/网络策划营销
  • Win/Linux笔记本合盖不睡眠设置指南
  • 数字ic后端设计从入门到精通14(含fusion compiler, tcl教学)半定制后端设计
  • react-quill-new富文本编辑器工具栏上传、粘贴截图、拖拽图片将base64改上传服务器再显示
  • 数据赋能(401)——大数据——持续学习与优化原则
  • 机器学习的多种算法
  • 【Golang】:函数和包