Python urllib.quote_plus() Examples
The following are 30
code examples of urllib.quote_plus().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
urllib
, or try the search function
.
Example #1
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def set_metadata(self, scope, name, key, value, recursive=False): """ Set data identifier metadata :param scope: The scope name. :param name: The data identifier name. :param key: the key. :param value: the value. :param recursive: Option to propagate the metadata change to content. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'meta', key]) url = build_url(choice(self.list_hosts), path=path) data = dumps({'value': value, 'recursive': recursive}) r = self._send_request(url, type='POST', data=data) if r.status_code == codes.created: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #2
Source File: main_natgeo.py From plugin.video.ustvvod with GNU General Public License v2.0 | 6 votes |
def add_videos(episode_tree, SITE): episodes = [] episode_menu = episode_tree.find_all('div', class_ = 'media-module') show_name = episode_tree.find('h1').text for episode_item in episode_menu: episode_name = episode_item.a['data-title'] episode_thumb = urllib.unquote_plus(episode_item.a.img['data-src'].split('url=')[1]) try: episode_duration = common.format_seconds(episode_item.find('div', class_='timestamp').text.strip()) except: episode_duration = -1 url = episode_item.a['href'] u = sys.argv[0] u += '?url="' + urllib.quote_plus(url) + '"' u += '&mode="' + SITE + '"' u += '&sitemode="play_video"' infoLabels = { 'title' : episode_name, 'durationinseconds' : episode_duration, 'TVShowTitle' : show_name } episodes.append((u, episode_name, episode_thumb, infoLabels, 'list_qualities', False, 'Full Episode')) return episodes
Example #3
Source File: default.py From tdw with GNU General Public License v3.0 | 6 votes |
def play(url, id=0): print url engine=__settings__.getSetting("Engine") if engine=="0": play_ace(url, id) if engine=="1": item = xbmcgui.ListItem()#path=url xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item) tthp.play(url, handle, id, __settings__.getSetting("DownloadDirectory")) if engine=="2": purl ="plugin://plugin.video.yatp/?action=play&torrent="+ urllib.quote_plus(url)+"&file_index="+str(id) item = xbmcgui.ListItem()#path=purl xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item) xbmc.Player().play(purl)
Example #4
Source File: selenium.py From browserscope with Apache License 2.0 | 6 votes |
def do_command(self, verb, args): conn = httplib.HTTPConnection(self.host, self.port) body = u'cmd=' + urllib.quote_plus(unicode(verb).encode('utf-8')) for i in range(len(args)): body += '&' + unicode(i+1) + '=' + urllib.quote_plus(unicode(args[i]).encode('utf-8')) if (None != self.sessionId): body += "&sessionId=" + unicode(self.sessionId) headers = {"Content-Type": "application/x-www-form-urlencoded; charset=utf-8"} conn.request("POST", "/selenium-server/driver/", body, headers) response = conn.getresponse() #print response.status, response.reason data = unicode(response.read(), "UTF-8") result = response.reason #print "Selenium Result: " + repr(data) + "\n\n" if (not data.startswith('OK')): raise Exception, data return data
Example #5
Source File: default.py From tdw with GNU General Public License v3.0 | 6 votes |
def add_item (name, mode="", path = Pdir, ind="0", cover=None, funart=None): #print name #print path if path.find("720p")>0: qual="[COLOR FFA900EF][ 720p ] [/COLOR]" elif path.find("480p")>0: qual="[COLOR FFFF0090][ 480p ] [/COLOR]" elif path.find("400p")>0: qual="[COLOR FF70F020][ 400p ] [/COLOR]" elif path.find("1080p")>0:qual="[COLOR FF50FF50][1080p] [/COLOR]" else: qual="[ ???? ] " if cover==None: listitem = xbmcgui.ListItem(qual+"[B]"+name+"[/B]") else: listitem = xbmcgui.ListItem(qual+"[B]"+name+"[/B]", iconImage=cover) listitem.setProperty('fanart_image', funart) uri = sys.argv[0] + '?mode='+mode uri += '&url=' + urllib.quote_plus(path.encode('utf-8')) uri += '&name=' + urllib.quote_plus(xt(name)) uri += '&ind=' + urllib.quote_plus(ind) if cover!=None:uri += '&cover=' + urllib.quote_plus(cover) if funart!=None and funart!="":uri += '&funart=' + urllib.quote_plus(funart) if mode=="play": fld=False else: fld=True xbmcplugin.addDirectoryItem(handle, uri, listitem, fld)
Example #6
Source File: urls.py From plugin.video.kmediatorrent with GNU General Public License v3.0 | 6 votes |
def _make_path(self, items): '''Returns a relative path for the given dictionary of items. Uses this url rule's url pattern and replaces instances of <var_name> with the appropriate value from the items dict. ''' for key, val in items.items(): if not isinstance(val, basestring): raise TypeError, ('Value "%s" for key "%s" must be an instance' ' of basestring' % (val, key)) items[key] = quote_plus((val).encode('utf-8')) try: path = self._url_format.format(**items) except AttributeError: # Old version of python path = self._url_format for key, val in items.items(): path = path.replace('{%s}' % key, val) return path
Example #7
Source File: twitterClass.py From FunUtils with MIT License | 6 votes |
def get_tweets(self): query = urllib.quote_plus('from:' + self.handle+\ ' since:2009-01-01 include:retweets' ) tweets = [] browser = anonBrowser() browser.anonymize() response = browser.open('http://search.twitter.com/'+\ 'search.json?q=' + query) json_objects = json.load(response) for result in json_objects['results']: new_result = {} new_result['from_user'] = result['from_user_name'] new_result['geo'] = result['geo'] new_result['tweet'] = result['text'] tweets.append(new_result) return tweets
Example #8
Source File: utils.py From plugin.video.emby with GNU General Public License v3.0 | 6 votes |
def unzip(path, dest, folder=None): ''' Unzip file. zipfile module seems to fail on android with badziperror. ''' path = urllib.quote_plus(path) root = "zip://" + path + '/' if folder: xbmcvfs.mkdir(os.path.join(dest, folder)) dest = os.path.join(dest, folder) root = get_zip_directory(root, folder) dirs, files = xbmcvfs.listdir(root) if dirs: unzip_recursive(root, dirs, dest) for file in files: unzip_file(os.path.join(root, file.decode('utf-8')), os.path.join(dest, file.decode('utf-8'))) LOG.warn("Unzipped %s", path)
Example #9
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def create_did_sample(self, input_scope, input_name, output_scope, output_name, nbfiles): """ Create a sample from an input collection. :param input_scope: The scope of the input DID. :param input_name: The name of the input DID. :param output_scope: The scope of the output dataset. :param output_name: The name of the output dataset. :param account: The account. :param nbfiles: The number of files to register in the output dataset. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(input_scope), quote_plus(input_name), quote_plus(output_scope), quote_plus(output_name), str(nbfiles), 'sample']) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='POST', data=dumps({})) if r.status_code == codes.created: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #10
Source File: metaclient.py From rucio with Apache License 2.0 | 6 votes |
def add_value(self, key, value): """ Sends the request to add a value to a key. :param key: the name for key. :param value: the value. :return: True if value was created successfully. :raises Duplicate: if valid already exists. """ path = '/'.join([self.META_BASEURL, quote_plus(key)]) + '/' data = dumps({'value': value}) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='POST', data=data) if r.status_code == codes.created: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #11
Source File: lockclient.py From rucio with Apache License 2.0 | 6 votes |
def get_dataset_locks(self, scope, name): """ Get a dataset locks of the specified dataset. :param scope: the scope of the did of the locks to list. :param name: the name of the did of the locks to list. """ path = '/'.join([self.LOCKS_BASEURL, quote_plus(scope), quote_plus(name)]) url = build_url(choice(self.list_hosts), path=path, params={'did_type': 'dataset'}) result = self._send_request(url) if result.status_code == codes.ok: # pylint: disable-msg=E1101 locks = self._load_json_data(result) return locks else: exc_cls, exc_msg = self._get_exception(headers=result.headers, status_code=result.status_code) raise exc_cls(exc_msg)
Example #12
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def list_parent_dids(self, scope, name): """ List parent dataset/containers of a did. :param scope: The scope. :param name: The name. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'parents']) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #13
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def list_associated_rules_for_file(self, scope, name): """ List the associated rules a file is affected from.. :param scope: The scope name. :param name: The file name. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'associated_rules']) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #14
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def delete_metadata(self, scope, name, key): """ Delete data identifier metadata :param scope: The scope name. :param name: The data identifier. :param key: the key. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'meta', key]) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='DEL') if r.status_code == codes.ok: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #15
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def set_status(self, scope, name, **kwargs): """ Set data identifier status :param scope: The scope name. :param name: The data identifier name. :param kwargs: Keyword arguments of the form status_name=value. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'status']) url = build_url(choice(self.list_hosts), path=path) data = dumps(kwargs) r = self._send_request(url, type='PUT', data=data) if r.status_code in (codes.ok, codes.no_content, codes.created): return True exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #16
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def list_did_rules(self, scope, name): """ List the associated rules of a data identifier. :param scope: The scope name. :param name: The data identifier name. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'rules']) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #17
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def get_did(self, scope, name, dynamic=False): """ Retrieve a single data identifier. :param scope: The scope name. :param name: The data identifier name. :param dynamic: Calculate sizes dynamically when True """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name)]) if dynamic: path += '?dynamic=True' url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return next(self._load_json_data(r)) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #18
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def list_files(self, scope, name, long=None): """ List data identifier file contents. :param scope: The scope name. :param name: The data identifier name. :param long: A boolean to choose if GUID is returned or not. """ payload = {} path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'files']) if long: payload['long'] = True url = build_url(choice(self.list_hosts), path=path, params=payload) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #19
Source File: nickteen.py From plugin.video.ustvvod with GNU General Public License v2.0 | 6 votes |
def add_videos(episode_tree): episodes = [] episode_menu = episode_tree.find_all('li', recursive = False) for episode_item in episode_menu: try: show_name = common.args.name except: show_name = None episode_link = episode_item.h4.a episode_name = episode_link.text url = BASE + episode_link['href'] episode_thumb = episode_item.find('img')['src'].split('?')[0] episode_plot = episode_item.find('p', class_ = 'description').text u = sys.argv[0] u += '?url="' + urllib.quote_plus(url) + '"' u += '&mode="' + SITE + '"' u += '&sitemode="play_video"' infoLabels = { 'title' : episode_name, 'plot' : episode_plot, 'tvshowtitle' : show_name } episodes.append((u, episode_name, episode_thumb, infoLabels, 'list_qualities', False, 'Full Episode')) return episodes
Example #20
Source File: didclient.py From rucio with Apache License 2.0 | 6 votes |
def detach_dids(self, scope, name, dids): """ Detach data identifier :param scope: The scope name. :param name: The data identifier name. :param dids: The content. """ path = '/'.join([self.DIDS_BASEURL, quote_plus(scope), quote_plus(name), 'dids']) url = build_url(choice(self.list_hosts), path=path) data = {'dids': dids} r = self._send_request(url, type='DEL', data=render_json(**data)) if r.status_code == codes.ok: return True exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #21
Source File: fox.py From plugin.video.ustvvod with GNU General Public License v2.0 | 6 votes |
def seasons(season_url = common.args.url): seasons = [] if season_url in different_show_name: season_url = different_show_name[season_url] season_data = connection.getURL(FULLEPISODES % urllib.quote_plus(season_url) + '&range=0-1') try: season_menu = int(simplejson.loads(season_data)['total_count']) except: season_menu = 0 if season_menu > 0: season_url2 = FULLEPISODES % urllib.quote_plus(season_url) + '&range=0-' + str(season_menu) seasons.append(('Full Episodes', SITE, 'episodes', season_url2, -1, -1)) season_data2 = connection.getURL(CLIPS % urllib.quote_plus(season_url) + '&range=0-1') try: season_menu2 = int(simplejson.loads(season_data2)['total_count']) except: season_menu2 = 0 if season_menu2 > 0: season_url3 = CLIPS % urllib.quote_plus(season_url) + '&range=0-' + str(season_menu2) seasons.append(('Clips', SITE, 'episodes', season_url3, -1, -1)) return seasons
Example #22
Source File: accountclient.py From rucio with Apache License 2.0 | 6 votes |
def get_global_account_usage(self, account, rse_expression=None): """ List the account usage for one or all RSE expressions of this account. :param account: The account name. :param rse_expression: The rse expression. """ if rse_expression: path = '/'.join([self.ACCOUNTS_BASEURL, account, 'usage', 'global', quote_plus(rse_expression)]) else: path = '/'.join([self.ACCOUNTS_BASEURL, account, 'usage', 'global']) url = build_url(choice(self.list_hosts), path=path) res = self._send_request(url, type='GET') if res.status_code == codes.ok: return self._load_json_data(res) else: exc_cls, exc_msg = self._get_exception(headers=res.headers, status_code=res.status_code, data=res.content) raise exc_cls(exc_msg)
Example #23
Source File: accountlimitclient.py From rucio with Apache License 2.0 | 6 votes |
def delete_global_account_limit(self, account, rse_expression): """ Sends the request to remove a global account limit. :param account: The name of the account. :param rse_expression: The rse expression. :return: True if quota was removed successfully. False otherwise. :raises AccountNotFound: if account doesn't exist. """ path = '/'.join([self.ACCOUNTLIMIT_BASEURL, 'global', account, quote_plus(rse_expression)]) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='DEL') if r.status_code == codes.ok: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #24
Source File: replicaclient.py From rucio with Apache License 2.0 | 6 votes |
def list_dataset_replicas_vp(self, scope, name, deep=False): """ List dataset replicas for a DID (scope:name) using the Virtual Placement service. NOTICE: This is an RnD function and might change or go away at any time. :param scope: The scope of the dataset. :param name: The name of the dataset. :param deep: Lookup at the file level. :returns: If VP exists a list of dicts of sites """ payload = {} if deep: payload = {'deep': True} url = build_url(self.host, path='/'.join([self.REPLICAS_BASEURL, quote_plus(scope), quote_plus(name), 'datasets_vp']), params=payload) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #25
Source File: replicaclient.py From rucio with Apache License 2.0 | 6 votes |
def list_dataset_replicas(self, scope, name, deep=False): """ List dataset replicas for a did (scope:name). :param scope: The scope of the dataset. :param name: The name of the dataset. :param deep: Lookup at the file level. :returns: A list of dict dataset replicas. """ payload = {} if deep: payload = {'deep': True} url = build_url(self.host, path='/'.join([self.REPLICAS_BASEURL, quote_plus(scope), quote_plus(name), 'datasets']), params=payload) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return self._load_json_data(r) exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #26
Source File: marvelkids.py From plugin.video.ustvvod with GNU General Public License v2.0 | 6 votes |
def episodes(episode_url = common.args.url): episodes = [] episode_data = connection.getURL(SHOWS) episode_tree = BeautifulSoup(episode_data, 'html.parser') episode_carousel = episode_tree.find('h2', text = re.compile(episode_url)).parent.parent for episode_item in episode_carousel.find_all('span', class_ = 'col'): try: episode_name = re.compile('"(.*)"').findall(episode_item.h3.string)[0] except: episode_name = episode_item.h3.string print episode_name episode_thumb = episode_item.img['src'] try: episode_url = episode_item.a['href'] except: episode_url = '' url = episode_url u = sys.argv[0] u += '?url="' + urllib.quote_plus(episode_url) + '"' u += '&mode="' + SITE + '"' u += '&sitemode="play_video"' infoLabels={'title' : episode_name } episodes.append((u, episode_name, episode_thumb, infoLabels, None, False, 'Clip')) return episodes
Example #27
Source File: fileclient.py From rucio with Apache License 2.0 | 6 votes |
def list_file_replicas(self, scope, lfn): """ List file replicas. :param scope: the scope. :param lfn: the lfn. :return: List of replicas. """ path = '/'.join([self.BASEURL, quote_plus(scope), quote_plus(lfn), 'rses']) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: rses = loads(r.text) return rses else: print(r.status_code) exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #28
Source File: thewbkids.py From plugin.video.ustvvod with GNU General Public License v2.0 | 6 votes |
def episodes(episode_url = common.args.url): episodes = [] episode_data = connection.getURL(EPISODES + episode_url) episode_data2 = simplejson.loads(episode_data)['list_html'] episode_tree = BeautifulSoup(episode_data2, 'html.parser').find('ul', id = 'videoList_ul') if episode_tree: episode_menu = episode_tree.find_all('li', recursive = False) for episode_item in episode_menu: infoLabels={} url = episode_item['id'][6:] episode_thumb = episode_item.img['src'].replace('103x69', '640x480') episode_name = episode_item.span.string episode_plot = episode_item.find(id = 'viddesc_' + url).string show_name = episode_item.find(id = 'vidtitle_' + url).string u = sys.argv[0] u += '?url="' + urllib.quote_plus(url) + '"' u += '&mode="' + SITE + '"' u += '&sitemode="play_video"' infoLabels={ 'title' : episode_name, 'plot' : episode_plot, 'TVShowTitle' : show_name } episodes.append((u, episode_name, episode_thumb, infoLabels, None, False, 'Clip')) return episodes
Example #29
Source File: scopeclient.py From rucio with Apache License 2.0 | 6 votes |
def add_scope(self, account, scope): """ Sends the request to add a new scope. :param account: the name of the account to add the scope to. :param scope: the name of the new scope. :return: True if scope was created successfully. :raises Duplicate: if scope already exists. :raises AccountNotFound: if account doesn't exist. """ path = '/'.join([self.SCOPE_BASEURL, account, 'scopes', quote_plus(scope)]) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='POST') if r.status_code == codes.created: return True else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)
Example #30
Source File: requestclient.py From rucio with Apache License 2.0 | 6 votes |
def list_request_by_did(self, name, rse, scope=None): """Return latest request details for a DID :param name: DID :type name: str :param rse: Destination RSE name :type rse: str :param scope: rucio scope, defaults to None :param scope: str, optional :raises exc_cls: from BaseClient._get_exception :return: request information :rtype: dict """ path = '/'.join(['requests', quote_plus(scope), quote_plus(name), rse]) url = build_url(choice(self.list_hosts), path=path) r = self._send_request(url, type='GET') if r.status_code == codes.ok: return next(self._load_json_data(r)) else: exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content) raise exc_cls(exc_msg)