Remove fragment from URLs (closes #636).

This commit is contained in:
Christophe Benz 2011-04-13 23:58:05 +02:00 committed by Romain Bignon
commit a329bd3d1e

View file

@ -257,10 +257,13 @@ class BaseBrowser(mechanize.Browser):
def check_location(func): def check_location(func):
def inner(self, *args, **kwargs): def inner(self, *args, **kwargs):
if args and isinstance(args[0], basestring) and args[0].startswith('/') and \ if args and isinstance(args[0], basestring):
(not self.request or self.request.host != self.DOMAIN): url = args[0]
args = ('%s://%s%s' % (self.PROTOCOL, self.DOMAIN, args[0]),) + args[1:] if url.startswith('/') and (not self.request or self.request.host != self.DOMAIN):
url = '%s://%s%s' % (self.PROTOCOL, self.DOMAIN, url)
url = re.sub('(.*)#.*', r'\1', url)
args = (url,) + args[1:]
return func(self, *args, **kwargs) return func(self, *args, **kwargs)
return inner return inner