I would use something like this:

*import requests*

class IS_VERIFIED_URL(object):
    def __init__(self, error_message="url does not exist!"):
        self.error_message = error_message

    def __call__(self, url):
        error = None
        *response = requests.get(url)*
        if *response.status_code != 200*:
            error = self.error_message
        return (url, error)

So in FORM, MODEL or SQLFORM

<db.table|INPUT>.requires = IS_VERIFIED_URL()


http://rochacbruno.com.br/custom-validator-for-web2py-forms/


*Bruno Cezar Rocha** - @rochacbruno*
[email protected] | Mobile: +55 (11) 99210-8821
www.CursoDePython.com.br | www.rochacbruno.com.br
Blog: Open links which points outside your own site in a new
window<http://rochacbruno.com.br/open-links-which-points-outside-your-own-site-in-a-new-window/>
  Get a signature like this.
<http://r1.wisestamp.com/r/landing?promo=18&dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_18>
Click
here.<http://r1.wisestamp.com/r/landing?promo=18&dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_18>



On Wed, Aug 15, 2012 at 12:01 PM, Hojat Taheri <[email protected]>wrote:

> in a shorten-er built by web2by i want to validate url's first, if it's
> not valid goes back to the first page with an error message. this is my
> code in controller (mvc arch.) but i don't get what's wrong..!!
>
> import urllib
>
> def index():
> return dict()
>
> def random_maker():
>
> url = request.vars.url
> try:
>     urllib.urlopen(url)
>
>     return dict(rand_url = ''.join(random.choice(string.ascii_uppercase + 
> string.digits + string.ascii_lowercase) for x in range(6)), input_url=url)
> except IOError:
>     return index()
>
>   --
>
>
>
>

-- 



Reply via email to