mardi 29 octobre 2013

Python 3 et requêtes web derrière un proxy

Dans le cadre du projet Luchiana, mon intelligence artificielle a besoin de se connecter à internet pour récupérer des informations. Dans certains cas, un proxy peut se trouver entre l'IA et internet. J'ai donc développé un petit module permettant d'accéder à internet à travers un proxy.

import urllib.request
import ssl


def connectProxy(type):
    proxy_info = {
    'user' : 'nom d utilisateur',
    'pass' : 'mot de passe',
    'host' : "ip ou nom du proxy",
    'port' : port # or 8080 or whatever
    }

    proxy_support = urllib.request.ProxyHandler({type : "http://%(user)s:%(pass)s@%(host)s:%(port)d" % proxy_info})
    opener = urllib.request.build_opener(proxy_support, urllib.request.HTTPHandler)

    # install it
    urllib.request.install_opener(opener)

Ensuite il suffit de faire un import Proxy dans votre projet et d'appeler la fonction avec un Proxy.connectProxy("typeConnection")
Le type de connection peut être https ou http selon les sites auxquels vous souhaitez accéder.

Aucun commentaire:

Enregistrer un commentaire