Patch #103473 from dougfort: Some sites (amazon.com for one) drop

cookies that contain '=' as part of the value. This patch modifies
Cookie.py to allow '=' as a legal character, and to make the key
search nongreedy so it stops at the first '='.
This commit is contained in:
Andrew M. Kuchling 2001-02-20 22:11:24 +00:00
parent 85cd1d690c
commit c05abb3bda

View file

@ -521,11 +521,11 @@ class Morsel(UserDict):
# result, the parsing rules here are less strict. # result, the parsing rules here are less strict.
# #
_LegalCharsPatt = r"[\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{]" _LegalCharsPatt = r"[\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{\=]"
_CookiePattern = re.compile( _CookiePattern = re.compile(
r"(?x)" # This is a Verbose pattern r"(?x)" # This is a Verbose pattern
r"(?P<key>" # Start of group 'key' r"(?P<key>" # Start of group 'key'
""+ _LegalCharsPatt +"+" # Any word of at least one letter ""+ _LegalCharsPatt +"+?" # Any word of at least one letter, nongreedy
r")" # End of group 'key' r")" # End of group 'key'
r"\s*=\s*" # Equal Sign r"\s*=\s*" # Equal Sign
r"(?P<val>" # Start of group 'val' r"(?P<val>" # Start of group 'val'