Skip to content

Instantly share code, notes, and snippets.

@fitorec
Created October 11, 2010 02:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fitorec/619905 to your computer and use it in GitHub Desktop.
Save fitorec/619905 to your computer and use it in GitHub Desktop.
Muestra la configuración de los ruteadores 2wire de telmex(bastante comunes),La salida es en un formato de XML
#! /usr/bin/env python
# -*- coding: utf-8 -*-
#
#Muestra la configuración de los ruteadores 2wire de telmex(bastante comunes)
#La salida es en un formato de XML
import urllib2, urllib
import re
ROUTER = "http://192.168.1.254"
MANAGEMENT = 'management'
DS = '/'
#en la pág. 07 esta la información de estos routers
PAGE = "A07"
#Preparamos/abrimos 1conexión para "leer" la pág. de la info del router
opener = urllib2.Request(ROUTER+DS+"xslt?PAGE=A07",None,{})
response = urllib2.urlopen(opener)
response = response.read()
#obteniendo el nombre del routeador
expr = re.compile('\<td\sclass\=\"textmono\"\>([a-zA-Z\-0-9\.\s]+)\<\/td\>')
model = expr.findall(response)
#obtenemos los demas datos del router
expr = re.compile('\<td\sclass\=\"data\"\>([a-zA-Z\-0-9\.\s]+)\<\/td\>')
data = expr.findall(response)
#las posiciones en la lista model definen la variable, ya que estan en función de como aparecen en la página
print """\
<?xml version="1.0"?>
<config>
<title>Demo Config</title>
<router>
<model>"""+model[0]+"""</model>
<serial_number>"""+data[0]+"""</serial_number>
<version_hardware>"""+data[1]+"""</version_hardware>
<version_software>"""+data[2]+"""</version_software>
<key_code>"""+data[3]+"""</key_code>
</router>
</config>
"""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment