iniqua

1jul/100

Python Lib: iptools

Publicado por ffranz

government,politics news,politics news,politics

Esta pequeña libreria proporciona un puñado de funciones y un par de objetos que pueden utilizarse junto con Scapy para organizar y facilitar el uso de IPs.

#!/usr/bin/env python
import iptools

INTERNAL_IPS = iptools.IpRangeList(
'127.0.0.1',                # single ip
'192.168/16',               # CIDR network block
('10.0.0.1', '10.0.0.19'),  # inclusive range
)

Funciones

  • validate_ip: Validar una dirección IP.
  • validate_cidr: Valida el CIDR de una dirección IP.
  • cidr2block: Convierte la notación CIDR en una tupla donde se muestra la IP de inicio y la IP final.

Objects:

  • IpRange: Rango de IPs 'iterable'.
  • IpRangeList: Listado de rangos de IPs 'iterables'.

+info: http://code.google.com/p/python-iptools/

2feb/100

User Agent String

Publicado por ffranz

government,politics news,politics news,politics

UserAgentString.com es una web muy sencilla pero que puede llegar a ser muy útil, veamos como.

Estos días estamos publicando una serie de entradas donde mostramos sencillos ejemplos con clientes HTTP en diferentes lenguajes de programación.

A veces lo sencillo no es la mejor solución. Un cliente tan sencillo como el que mostramos en el pequeño script de python:

import urllib
import urllib2
url = 'http://www.example.com/accion'
values = {'param1':'parametro','param2':'parametro'}
data = urllib.urlencode(values)
req = urllib2.Request(url,data)
res = urllib2.urlopen(req)
print res.read()
res.close()

Puede darnos algunos problemas para acceder a cierta información, que desde un navegador si que nos resulta accesible.

>>> import urllib
>>> import urllib2
>>> url = 'http://www.google.com/search?q=iniqua'
>>> req = urllib2.Request(url)
>>> res = urllib2.urlopen(req)
urllib2.HTTPError: HTTP Error 403: Forbidden
21ene/101

HTTP client (I): python-ruby-perl

Publicado por ffranz

government,politics news,politics news,politics

En muchas ocasiones podemos vernos en la necesidad de realizar consultas HTTP de una forma más automática, como por ejemplo hacer uso de servicios como el que comentamos en nuestra anterior entrada. Para estos casos el uso de los navegadores web puede resultar poco útil.

A continuación, y a modo de "cheat sheet", listamos sencillos ejemplos del uso de librerías para realizar peticiones HTTP en los tres lenguajes interpretados más utilizados, por lo menos por nosotros.

Python

# Importacion de las librerias.
import urllib
import urllib2
# Definicion de la URL que se pedira.
url = 'http://www.example.com/accion'
values = {'param1':'parametro','param2':'parametro'}
# Codificacion de los parametros de la url.
data = urllib.urlencode(values)
req = urllib2.Request(url,data)
# Lanzamiento de la peticion.
res = urllib2.urlopen(req)
# Mostramos los resultados.
print res.read()
# Cierre del descriptor.
res.close()

Etiquetado con: , , Continúa leyendo
   
Get Adobe Flash playerPlugin by wpburn.com wordpress themes