def _mime_vs_type(mime, requested_type): """ @param mime: @param requested_type: @return: number of warnings produced by combo """ with warnings.catch_warnings(record=True) as w: qr = QueryResult((FakeResponse(mime), requested_type)) try: qr.convert() except: pass return len(w)
def _mime_vs_type(mime, requested_type): """ :param mime: mimetype/Content-Type of the response :param requested_type: requested mimetype (alias) :return: number of warnings produced by combo """ with warnings.catch_warnings(record=True) as w: qr = QueryResult((FakeResponse(mime), requested_type)) try: qr.convert() except: pass return len(w)
def _to_df(result: Wrapper.QueryResult) -> pd.DataFrame: """ :param result: :return: Dataframe """ pd.set_option('display.max_columns', None) pd.set_option('display.max_colwidth', None) def format_value(res_value): value = res_value["value"] lang = res_value.get("xml:lang", None) datatype = res_value.get("datatype", None) if lang is not None: value += "@" + lang if datatype is not None: value += " [" + datatype + "]" return value results = result.convert() column_names = [] for var in results["head"]["vars"]: column_names.append(var) df = pd.DataFrame(columns=column_names) values = [] for r in results["results"]["bindings"]: row = [] for col in results["head"]["vars"]: if col in r: result_value = format_value(r[col]) else: result_value = None row.append(result_value) values.append(row) df = df.append(pd.DataFrame(values, columns=df.columns)) return df