宽带路由器自动登录怎么实现

如果是用Basic Auth 的话,可以参考这段代码

import urllib2, base64

request = urllib2.Request(url) base64string = base64.encodestring('%s:%s' % (user,password))[:-1] request.add_header("Authorization", "Basic %s" % base64string)

htmlFile = urllib2.urlopen(request) htmlData = htmlFile.read() print htmlData htmlFile.close()

On 4/10/07, Shuning Hong <hong...@gmail.com> wrote:

这是我的做法:

params='MainID=C&SubID=1'

authstr='Basic '+base64.encodestring(routeruser+':'+routerpass)

authstr=authstr[:-1] # delete last /n

headers={'Authorization':authstr}

On 4/10/07, 蒋辉 <jhui...@163.com> wrote:

我是电信光纤宽带用户,用web 认证不支持多台机器上网。参考了网上的资料,想 写一个 python 的小程序,可以自动获取宽带路由器的外网IP,自动发送认证信 息。宽带路由器登录时会要用户名密码,否则就连不上,我通过使用嗅探器抓包把 认证过的'Authorization' 值取出放在我的程序里能连上路由器,但通用性太差。 有什么好方法可以解决吗?

我的小程序如下: #ptyhon import urllib import httplib params = urllib.urlencode({}) headers = {'Accept': 'text/html', 'User-Agent': 'Mozilla','Content-Type': 'application/x-www-form-urlencoded','Authorization': 'Basic amh1aTpqaHVpMTIzNA=='} conn = httplib.HTTPConnection("192.168.1.1") #print headers conn.request("GET","/userRpm/StatusRpm.htm",params,headers) #id (conn) r1 = conn.getresponse() a = r1.read() #print a b = a.find("222") #print b c = a.find("</td",b) #print c d = a[b:c] print d

params = urllib.urlencode({'connectname': '', 'consumeright': 0, 'separatecard': 0, 'needActiveX' : 1, 'clienttype' :1, 'cookiedate' :3650, 'localip': d, 'httpIP' :d, 'isPNP':0, 'username': "njkd107089173", 'password': "1976"})

headers = {'Accept': 'text/html', 'User-Agent': 'Mozilla', 'Content-Type': 'application/x-www-form-urlencoded'}

server = '218.2.135.36' path = '/secu/webLogin.jsp'

conn = httplib.HTTPConnection(server) conn.request("POST", path, params, headers) r1 = conn.getresponse() print r1.status, r1.reason data1 = r1.read() print data1 conn.close()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值