python拨号_python 拨号代码(win10 系统亲测有效)

# -*- coding: utf-8 -*-

import win32ras

import time,os

def Connect(dialname, account, passwd):

dial_params = (dialname, '', '', account, passwd, '')

return win32ras.Dial(None, None, dial_params, None)

def DialBroadband():

dialname = u'宽带连接' #just a name

account = u'059291294332'

passwd = u'189133'

try:

#handle is a pid, for disconnect or showipadrress, if connect success return 0.

#account is the username that your ISP supposed, passwd is the password.

handle, result = Connect(dialname, account, passwd)

if result == 0:

print "Connection success!"

return handle, result

else:

print "Connection failed, wait for 5 seconds and try again..."

time.sleep(5)

DialBroadband()

except:

print "Can't finish this connection, please check out."

return

def Disconnect(handle):

if handle != None:

try:

win32ras.HangUp(handle)

print "Disconnection success!"

return "success"

except:

print "Disconnection failed, wait for 5 seconds and try again..."

time.sleep(5)

Disconnect()

else:

print "Can't find the process!"

return

def Check_for_Broadband():

connections = []

connections = win32ras.EnumConnections()

if(len(connections) == 0):

print "The system is not running any broadband connection."

return

else:

print "The system is running %d broadband connection." % len(connections)

return connections

def ShowIpAddress(handle):

print win32ras.GetConnectStatus(handle)

data = os.popen("ipconfig","r").readlines()

have_ppp = 0

ip_str = None

for line in data:

if line.find("宽带连接")>=0:

have_ppp = 1

#if your system language is English, you should write like this:

#if have_ppp and line.strip().startswith("IP Address"):

#in othewords, replace the "IPv4 地址" to "IP Address"

if have_ppp and line.strip().startswith("IPv4 地址"):

ip_str = line.split(":")[1].strip()

have_ppp = 0

print ip_str

def main():

data = Check_for_Broadband()

if data != None:

for p in data:

ShowIpAddress(p[0])

if(Disconnect(p[0]) == "success"):

print "%s has been disconnected." % p[1]

time.sleep(3)

else:

pid, res = DialBroadband()

ShowIpAddress(pid)

time.sleep(3)

# Disconnect(pid)

return "finsh test"

test = main()

print test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值