第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > Python 实现PPPOE自动拨号

Python 实现PPPOE自动拨号

时间:2024-01-05 18:34:54

相关推荐

Python 实现PPPOE自动拨号

文章目录

一、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,下面我们来看一下这几个属性。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。