# -*- coding: utf-8 -*-
# Реализация API memori.ru
# добавление закладки (букмарк)
#
# Copyright (c) 2010, WebII Lab (webii.ru)
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
# * Neither the name of the Webii Lab nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
# OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
def memorize(username, password, description, href, extended, tags, point=5, share="yes", show="yes", start="yes"):
"""
Сохраняет урл в закладках на memori.ru
параметры:
--------
username - имя пользователя на memori.ru
password - пароль на memori.ru
description - описание зауладки
href - ссылка
extended - подробное описание закладки
tags - список тэгов через запятую
point - оценка (от 1 до 5)
share - по умолчанию yes - закладка публичная (no - нет)
show - по умолчанию yes - видна друзьям (no - нет)
start - по умолчанию yes - показывать на главной (no - нет)
"""
from urllib import urlencode
import urllib2
from urllib2 import Request, urlopen, URLError, HTTPError
ourl = 'http://memori.ru/api-v2/posts/add?'
params=urlencode({'description':description.encode("utf-8"), 'href':href, 'extended':extended.encode("utf-8"), 'tags':tags.encode("utf-8"),
'point':point, 'share':share, 'show':show, 'start':start} )
theurl = ourl+params
passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, ourl, username, password)
authhandler = urllib2.HTTPBasicAuthHandler(passman)
opener = urllib2.build_opener(authhandler)
try:
urlh = opener.open(theurl)
data = urlh.read()
except Exception, e:
return False
urlh.close()
return True