# -*- coding: UTF-8 -*- #/* # * Copyright (C) 2012 Libor Zoubek # * # * # * This Program is free software; you can redistribute it and/or modify # * it under the terms of the GNU General Public License as published by # * the Free Software Foundation; either version 2, or (at your option) # * any later version. # * # * This Program is distributed in the hope that it will be useful, # * but WITHOUT ANY WARRANTY; without even the implied warranty of # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # * GNU General Public License for more details. # * # * You should have received a copy of the GNU General Public License # * along with this program; see the file COPYING. If not, write to # * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. # * http://www.gnu.org/copyleft/gpl.html # * # */ import sys import urllib #Python 2 try: import cookielib import urllib2 import urlparse #import sys reload(sys) # Reload does the trick! sys.setdefaultencoding('UTF8') #Python 3 except: import http.cookiejar cookielib = http.cookiejar urllib2 = urllib.request urlparse = urllib.parse import re,random,util,os,traceback from provider import ContentProvider from provider import ResolveException class FastshareContentProvider(ContentProvider): def __init__(self,username=None,password=None,filter=None,tmp_dir='.'): ContentProvider.__init__(self,'fastshare.cz','https://www.fastshare.cz/',username,password,filter,tmp_dir) opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookielib.LWPCookieJar())) urllib2.install_opener(opener) def capabilities(self): return ['search','resolve'] def search(self,keyword): return self.list('?term='+urlparse.quote(keyword)) def list(self,url): result = [] page = util.request(self._url(url)) data = util.substr(page,'