QUrl

Synopsis

Functions

Static functions

Detailed Description

The PySide.QtCore.QUrl class provides a convenient interface for working with URLs.

It can parse and construct URLs in both encoded and unencoded form. PySide.QtCore.QUrl also has support for internationalized domain names (IDNs).

The most common way to use PySide.QtCore.QUrl is to initialize it via the constructor by passing a PySide.QtCore.QString . Otherwise, PySide.QtCore.QUrl.setUrl() and PySide.QtCore.QUrl.setEncodedUrl() can also be used.

URLs can be represented in two forms: encoded or unencoded. The unencoded representation is suitable for showing to users, but the encoded representation is typically what you would send to a web server. For example, the unencoded URL “http://bühler.example.com” would be sent to the server as “http://xn–bhler-kva.example.com/List%20of%20applicants.xml”.

A URL can also be constructed piece by piece by calling PySide.QtCore.QUrl.setScheme() , PySide.QtCore.QUrl.setUserName() , PySide.QtCore.QUrl.setPassword() , PySide.QtCore.QUrl.setHost() , PySide.QtCore.QUrl.setPort() , PySide.QtCore.QUrl.setPath() , PySide.QtCore.QUrl.setEncodedQuery() and PySide.QtCore.QUrl.setFragment() . Some convenience functions are also available: PySide.QtCore.QUrl.setAuthority() sets the user name, password, host and port. PySide.QtCore.QUrl.setUserInfo() sets the user name and password at once.

Call PySide.QtCore.QUrl.isValid() to check if the URL is valid. This can be done at any point during the constructing of a URL.

Constructing a query is particularly convenient through the use of PySide.QtCore.QUrl.setQueryItems() , PySide.QtCore.QUrl.addQueryItem() and PySide.QtCore.QUrl.removeQueryItem() . Use PySide.QtCore.QUrl.setQueryDelimiters() to customize the delimiters used for generating the query string.

For the convenience of generating encoded URL strings or query strings, there are two static functions called PySide.QtCore.QUrl.fromPercentEncoding() and PySide.QtCore.QUrl.toPercentEncoding() which deal with percent encoding and decoding of QStrings.

Calling PySide.QtCore.QUrl.isRelative() will tell whether or not the URL is relative. A relative URL can be resolved by passing it as argument to PySide.QtCore.QUrl.resolved() , which returns an absolute URL. PySide.QtCore.QUrl.isParentOf() is used for determining whether one URL is a parent of another.

PySide.QtCore.QUrl.fromLocalFile() constructs a PySide.QtCore.QUrl by parsing a local file path. PySide.QtCore.QUrl.toLocalFile() converts a URL to a local file path.

The human readable representation of the URL is fetched with PySide.QtCore.QUrl.toString() . This representation is appropriate for displaying a URL to a user in unencoded form. The encoded form however, as returned by PySide.QtCore.QUrl.toEncoded() , is for internal use, passing to web servers, mail clients and so on.

PySide.QtCore.QUrl conforms to the URI specification from RFC 3986 (Uniform Resource Identifier: Generic Syntax), and includes scheme extensions from RFC 1738 (Uniform Resource Locators). Case folding rules in PySide.QtCore.QUrl conform to RFC 3491 (Nameprep: A Stringprep Profile for Internationalized Domain Names (IDN)).

Character Conversions

Follow these rules to avoid erroneous character conversion when dealing with URLs and strings:

class PySide.QtCore.QUrl
class PySide.QtCore.QUrl(url)
class PySide.QtCore.QUrl(url, mode)
class PySide.QtCore.QUrl(copy)
Parameters:
PySide.QtCore.QUrl.ParsingMode
PySide.QtCore.QUrl.FormattingOption
PySide.QtCore.QUrl.__reduce__()
Return type:PyObject
PySide.QtCore.QUrl.__repr__()
Return type:PyObject
PySide.QtCore.QUrl.addEncodedQueryItem(key, value)
Parameters:
PySide.QtCore.QUrl.addQueryItem(key, value)
Parameters:
  • key – unicode
  • value – unicode
PySide.QtCore.QUrl.allEncodedQueryItemValues(key)
Parameters:keyPySide.QtCore.QByteArray
Return type:
PySide.QtCore.QUrl.allQueryItemValues(key)
Parameters:key – unicode
Return type:list of strings
PySide.QtCore.QUrl.authority()
Return type:unicode
PySide.QtCore.QUrl.clear()
PySide.QtCore.QUrl.encodedFragment()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedHost()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedPassword()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedPath()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedQuery()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedQueryItemValue(key)
Parameters:keyPySide.QtCore.QByteArray
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.encodedQueryItems()
Return type:
PySide.QtCore.QUrl.encodedUserName()
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.errorString()
Return type:unicode
PySide.QtCore.QUrl.fragment()
Return type:unicode
static PySide.QtCore.QUrl.fromAce(arg__1)
Parameters:arg__1PySide.QtCore.QByteArray
Return type:unicode
static PySide.QtCore.QUrl.fromEncoded(url, mode)
Parameters:
Return type:

PySide.QtCore.QUrl

static PySide.QtCore.QUrl.fromEncoded(url)
Parameters:urlPySide.QtCore.QByteArray
Return type:PySide.QtCore.QUrl
static PySide.QtCore.QUrl.fromLocalFile(localfile)
Parameters:localfile – unicode
Return type:PySide.QtCore.QUrl
static PySide.QtCore.QUrl.fromPercentEncoding(arg__1)
Parameters:arg__1PySide.QtCore.QByteArray
Return type:unicode
static PySide.QtCore.QUrl.fromPunycode(arg__1)
Parameters:arg__1PySide.QtCore.QByteArray
Return type:unicode
static PySide.QtCore.QUrl.fromUserInput(userInput)
Parameters:userInput – unicode
Return type:PySide.QtCore.QUrl
PySide.QtCore.QUrl.hasEncodedQueryItem(key)
Parameters:keyPySide.QtCore.QByteArray
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.hasFragment()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.hasQuery()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.hasQueryItem(key)
Parameters:key – unicode
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.host()
Return type:unicode
static PySide.QtCore.QUrl.idnWhitelist()
Return type:list of strings
PySide.QtCore.QUrl.isEmpty()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.isLocalFile()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.isParentOf(url)
Parameters:urlPySide.QtCore.QUrl
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.isRelative()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.isValid()
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.__ne__(url)
Parameters:urlPySide.QtCore.QUrl
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.__lt__(url)
Parameters:urlPySide.QtCore.QUrl
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.__eq__(url)
Parameters:urlPySide.QtCore.QUrl
Return type:PySide.QtCore.bool
PySide.QtCore.QUrl.password()
Return type:unicode
PySide.QtCore.QUrl.path()
Return type:unicode
PySide.QtCore.QUrl.port()
Return type:PySide.QtCore.int
PySide.QtCore.QUrl.port(defaultPort)
Parameters:defaultPortPySide.QtCore.int
Return type:PySide.QtCore.int
PySide.QtCore.QUrl.queryItemValue(key)
Parameters:key – unicode
Return type:unicode
PySide.QtCore.QUrl.queryItems()
Return type:
PySide.QtCore.QUrl.queryPairDelimiter()
Return type:PySide.QtCore.char
PySide.QtCore.QUrl.queryValueDelimiter()
Return type:PySide.QtCore.char
PySide.QtCore.QUrl.removeAllEncodedQueryItems(key)
Parameters:keyPySide.QtCore.QByteArray
PySide.QtCore.QUrl.removeAllQueryItems(key)
Parameters:key – unicode
PySide.QtCore.QUrl.removeEncodedQueryItem(key)
Parameters:keyPySide.QtCore.QByteArray
PySide.QtCore.QUrl.removeQueryItem(key)
Parameters:key – unicode
PySide.QtCore.QUrl.resolved(relative)
Parameters:relativePySide.QtCore.QUrl
Return type:PySide.QtCore.QUrl
PySide.QtCore.QUrl.scheme()
Return type:unicode
PySide.QtCore.QUrl.setAuthority(authority)
Parameters:authority – unicode
PySide.QtCore.QUrl.setEncodedFragment(fragment)
Parameters:fragmentPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedHost(host)
Parameters:hostPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedPassword(password)
Parameters:passwordPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedPath(path)
Parameters:pathPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedQuery(query)
Parameters:queryPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedQueryItems(query)
Parameters:query
PySide.QtCore.QUrl.setEncodedUrl(url, mode)
Parameters:
PySide.QtCore.QUrl.setEncodedUrl(url)
Parameters:urlPySide.QtCore.QByteArray
PySide.QtCore.QUrl.setEncodedUserName(userName)
Parameters:userNamePySide.QtCore.QByteArray
PySide.QtCore.QUrl.setFragment(fragment)
Parameters:fragment – unicode
PySide.QtCore.QUrl.setHost(host)
Parameters:host – unicode
static PySide.QtCore.QUrl.setIdnWhitelist(arg__1)
Parameters:arg__1 – list of strings
PySide.QtCore.QUrl.setPassword(password)
Parameters:password – unicode
PySide.QtCore.QUrl.setPath(path)
Parameters:path – unicode
PySide.QtCore.QUrl.setPort(port)
Parameters:portPySide.QtCore.int
PySide.QtCore.QUrl.setQueryDelimiters(valueDelimiter, pairDelimiter)
Parameters:
  • valueDelimiterPySide.QtCore.char
  • pairDelimiterPySide.QtCore.char
PySide.QtCore.QUrl.setQueryItems(query)
Parameters:query
PySide.QtCore.QUrl.setScheme(scheme)
Parameters:scheme – unicode
PySide.QtCore.QUrl.setUrl(url, mode)
Parameters:
PySide.QtCore.QUrl.setUrl(url)
Parameters:url – unicode
PySide.QtCore.QUrl.setUserInfo(userInfo)
Parameters:userInfo – unicode
PySide.QtCore.QUrl.setUserName(userName)
Parameters:userName – unicode
PySide.QtCore.QUrl.swap(other)
Parameters:otherPySide.QtCore.QUrl
static PySide.QtCore.QUrl.toAce(arg__1)
Parameters:arg__1 – unicode
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.toEncoded([options=QUrl.None])
Parameters:optionsPySide.QtCore.QUrl.FormattingOptions
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.toLocalFile()
Return type:unicode
static PySide.QtCore.QUrl.toPercentEncoding(arg__1[, exclude=QByteArray()[, include=QByteArray()]])
Parameters:
Return type:

PySide.QtCore.QByteArray

static PySide.QtCore.QUrl.toPunycode(arg__1)
Parameters:arg__1 – unicode
Return type:PySide.QtCore.QByteArray
PySide.QtCore.QUrl.toString([options=QUrl.None])
Parameters:optionsPySide.QtCore.QUrl.FormattingOptions
Return type:unicode
PySide.QtCore.QUrl.topLevelDomain()
Return type:unicode
PySide.QtCore.QUrl.userInfo()
Return type:unicode
PySide.QtCore.QUrl.userName()
Return type:unicode