We can leverage the referrer (famously misspelled referer) information to track access around a web site. As with other interesting fields, we need to decompose this into host name and path information. The most reliable way to do this is to use the urllib.parse
module.
This means that we'll need to make a change to our log_event_2()
function to add yet another parsing step. When we parse the referrer URL, we'll get at least six pieces of information:
scheme
: This is usuallyhttp
.netloc
: This is the server which made the referral. This will be the name of the server, not the IP address.path
: This is the path to the page which had the link.params
: This can be anything after the?
symbol in a URL. Usually, this is empty for simple static content sites.fragment
: This can be anything after the#
in a URL.
These details are items within a Namedtuple
object: we can refer to them by name or by position within the tuple. We have three ways to handle the parsing of URLs:
We can...