文章目录
一、WIN10添加PPPoE拨号连接设置二、python 实现三. Django 中使用 MySQL 存储时间遇到的问题一、WIN10添加PPPoE拨号连接设置
1.1 右键点击桌面右下角的网络图标,打开网络和共享中心
1.2 在打开的网络和Internet中,从 拨号进入 设置新连接
1.3 在设置连接或网络向导中,选择 连接到Internet,并进入 新连接的设置
1.4 在连接到Internet对连接方式进行选择,一般来说宽带就是PPPoE模式
1.5 在选择之后,就是对用户名和密码,及名称进行设定
二、python 实现
代码如下(示例):
import osimport randomimport timeimport pymysqlglobal flagglobal time_sumdef connect_ADSL(name,username,password):cmd_string = f'rasdial {name} {username} {password}'global flag, time_sumflag = os.system(cmd_string)print('flag:', flag)if flag == 0:time_sum = random.randint(3, 16)m = time_sumwhile m > 0:print("time_sum", m)m -= 1os.system('ping ')time.sleep(1)def disconnect_ADSL(name):cmd_string = f'rasdial {name} /disconnect'os.system(cmd_string)def sql():conn = pymysql.connect("127.0.0.1", "root", "X", "pppoe")cursor = conn.cursor()sql_select = "SELECT user_name,password FROM pppoe where time_sum is null"cursor.execute(sql_select)data = cursor.fetchall()for user in data:print(user[0], user[1], ' :select:', time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))time_start = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())time_end = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())connect_ADSL('PPPOE', user[0], user[1])print("flag:", flag)global time_sumif flag == 0:disconnect_ADSL('PPPOE')time_end = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())sql_update = "UPDATE pppoe set flag =" + "'" + str(flag) + "', " \"time_sum =" + "'" + str(time_sum) + "', " \"time_start =" + "'" + time_start + "', " \"time_end =" + "'" + time_end + \"' where user_name ='" + user[0] + "'"cursor.execute(sql_update)else:time_sum = 0sql_update = "UPDATE pppoe set flag =" + "'" + str(flag) + "', " \"time_sum =" + "'" + str(time_sum) + "', " \"time_start =" + "'" + time_start + "', " \"time_end =" + "'" + time_end + \"' where user_name ='" + user[0] + "'"cursor.execute(sql_update)print(time_start, time_end)mit()cursor.close()conn.close()sql()
附:
Mysql字段varchar类型值前面拼接上0,使用、修改(concat函数的使用)
select concat('0',user_name) from pppoe where flag != 0 and user_name = '7109908416'update pppoe set user_name = concat('0',user_name) WHERE flag != 0 and user_name like '7%' ORDER BY time_start desc
mysql datetime时间比较 并清空
SELECT * FROM pppoemysql_pppoe3000 where time_end < '-08-26 16:40:16'UPDATE pppoemysql_pppoe3000 set flag=null, time_sum=null, time_start=null,time_end=null where flag= '691'
三. Django 中使用 MySQL 存储时间遇到的问题
Django 在配置文件 settings.py 中对时间时区有影响的是两个参数,一个是 TIME_ZONE,另一个是 USE_TZ。根据 USE_TZ 官网文档中的描述,这一属性默认值是 False。如果设置为 Ture,Django 内部将会使用对时区敏感的时间,否则 Django 将会使用系统本地的原有时间。(注意:为了方便,由 django-admin.py startproject 创建而来的项目 settings.py 中此项值设置为了 Ture)
与这一属性相关的还有 TIME_ZONE, USE_I18N 和 USE_L10N,下面我们来看一下这几个属性。