Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
# Bare domains aren't valid URLs.
if not uri.path:
uri = uri.copy_with(path='/')
if isinstance(params, (str, bytes)):
params = to_native_string(params)
enc_params = self._encode_params(params)
if enc_params:
if uri.query:
uri = uri.copy_with(query=f'{uri.query}&{enc_params}')
else:
uri = uri.copy_with(query=enc_params)
# url = requote_uri(
# urlunparse([uri.scheme, uri.authority, uri.path, None, uri.query, uri.fragment])
# )
# Normalize the URI.
self.url = rfc3986.normalize_uri(uri.unsplit())
# Bare domains aren't valid URLs.
if not uri.path:
uri = uri.copy_with(path='/')
if isinstance(params, (str, bytes)):
params = to_native_string(params)
enc_params = self._encode_params(params)
if enc_params:
if uri.query:
uri = uri.copy_with(query=f'{uri.query}&{enc_params}')
else:
uri = uri.copy_with(query=enc_params)
# url = requote_uri(
# urlunparse([uri.scheme, uri.authority, uri.path, None, uri.query, uri.fragment])
# )
# Normalize the URI.
self.url = rfc3986.normalize_uri(uri.unsplit())
def normalize_text(text):
if not isArabic(text):
return text.replace(' ', '+')
else:
return normalize_uri(text)
def url_path(url_path):
"""Raises an error if the url_path doesn't look like a URL Path."""
try:
p_url = rfc3986.urlparse(rfc3986.normalize_uri(url_path))
invalid_path = (
p_url.scheme or p_url.userinfo or p_url.host or
p_url.port or
p_url.path is None or
not p_url.path.startswith('/')
)
if invalid_path:
raise exceptions.InvalidURLPath(url_path=url_path)
except Exception:
raise exceptions.InvalidURLPath(url_path=url_path)
return True
else:
url = str(url)
# Ignore any leading and trailing whitespace characters.
url = url.strip()
# Don't do any URL preparation for non-HTTP schemes like `mailto`,
# `data` etc to work around exceptions from `url_parse`, which
# handles RFC 3986 only.
if ':' in url and not url.lower().startswith('http'):
self.url = url
return
# Support for unicode domain names and paths.
try:
uri = rfc3986.urlparse(url)
if validate:
rfc3986.normalize_uri(url)
except rfc3986.exceptions.RFC3986Exception:
raise InvalidURL(f"Invalid URL {url!r}: URL is imporoper.")
if not uri.scheme:
error = (
"Invalid URL {0!r}: No scheme supplied. Perhaps you meant http://{0}?"
)
error = error.format(to_native_string(url, 'utf8'))
raise MissingScheme(error)
if not uri.host:
raise InvalidURL(f"Invalid URL {url!r}: No host supplied")
# In general, we want to try IDNA encoding the hostname if the string contains
# non-ASCII characters. This allows users to automatically get the correct IDNA
# behaviour. For strings containing only ASCII characters, we need to also verify
if result is not None:
for audio in result:
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton("Description", callback_data=audio[0]))
inline_results.append(types.InlineQueryResultCachedVoice(str(audio[2]), audio[0], audio[1], reply_markup=markup))
# TTS audio
else:
# text = urllib2.quote(text.encode('UTF-8'))
# bot.send_message(6216877, text)
# text = text.replace('%2B', '+')
# bot.send_message(6216877, text)
# normalize query
q.query = q.query.replace("\n", " ")
text = normalize_uri(q.query) if isArabic(q.query) else q.query.replace(' ', '+')
# Inline button
code_id = store_query(q)
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton("Text", callback_data=code_id))
magic = TTS.format(query=text)
cont = 1
sql_read = "SELECT `Ar`,`De-de`,`En-uk`,`En-us`,`Es-es`,`Es-mx`,`Fr-fr`,`It-it`,`Pt-pt`,`El-gr`," + \
"`Ru-ru`,`Tr-tr`,`Zh-cn`,`Ja`, `Pl` FROM Lan_Results WHERE id = '%s'" % (q.from_user.id)
result = read_db(sql_read)
if result is not None:
# array of (language_name, language_id, language_count)
sorted_languages = sorted([(LAN.items()[i][0], LAN.items()[i][1], result[0][i]) for i in range(len(LAN))], key=itemgetter(2), reverse=True)
if not isArabic(q.query):
else:
url = str(url)
# Ignore any leading and trailing whitespace characters.
url = url.strip()
# Don't do any URL preparation for non-HTTP schemes like `mailto`,
# `data` etc to work around exceptions from `url_parse`, which
# handles RFC 3986 only.
if ':' in url and not url.lower().startswith('http'):
self.url = url
return
# Support for unicode domain names and paths.
try:
uri = rfc3986.urlparse(url)
if validate:
rfc3986.normalize_uri(url)
except rfc3986.exceptions.RFC3986Exception:
raise InvalidURL(f"Invalid URL {url!r}: URL is imporoper.")
if not uri.scheme:
error = (
"Invalid URL {0!r}: No scheme supplied. Perhaps you meant http://{0}?"
)
error = error.format(to_native_string(url, 'utf8'))
raise MissingScheme(error)
if not uri.host:
raise InvalidURL(f"Invalid URL {url!r}: No host supplied")
# In general, we want to try IDNA encoding the hostname if the string contains
# non-ASCII characters. This allows users to automatically get the correct IDNA
# behaviour. For strings containing only ASCII characters, we need to also verify