mirror of
https://github.com/webrecorder/pywb.git
synced 2025-03-15 08:04:49 +01:00
rules: add [?&] prefix to query match, use {0} instead of {} for 2.6
compatibility
This commit is contained in:
parent
4c5a7d6bcd
commit
e2f8594ea7
@ -161,15 +161,15 @@ class CDXDomainSpecificRule(BaseRule):
|
||||
def make_query_match_regex(params_list):
|
||||
r"""
|
||||
>>> CDXDomainSpecificRule.make_query_match_regex(['param1', 'id', 'abc'])
|
||||
'(abc=[^&]+).*(id=[^&]+).*(param1=[^&]+)'
|
||||
'[?&](abc=[^&]+).*[?&](id=[^&]+).*[?&](param1=[^&]+)'
|
||||
|
||||
>>> CDXDomainSpecificRule.make_query_match_regex(['id[0]', 'abc()'])
|
||||
'(abc\\(\\)=[^&]+).*(id\\[0\\]=[^&]+)'
|
||||
'[?&](abc\\(\\)=[^&]+).*[?&](id\\[0\\]=[^&]+)'
|
||||
|
||||
"""
|
||||
params_list.sort()
|
||||
def conv(value):
|
||||
return '({}=[^&]+)'.format(re.escape(value))
|
||||
return '[?&]({0}=[^&]+)'.format(re.escape(value))
|
||||
|
||||
params_list = map(conv, params_list)
|
||||
final_str = '.*'.join(params_list)
|
||||
|
Loading…
x
Reference in New Issue
Block a user