diff --git a/gallery_dl/extractor/pinterest.py b/gallery_dl/extractor/pinterest.py index 2327d0a4..da93e80c 100644 --- a/gallery_dl/extractor/pinterest.py +++ b/gallery_dl/extractor/pinterest.py @@ -231,7 +231,7 @@ class PinterestBoardExtractor(PinterestExtractor): directory_fmt = ("{category}", "{board[owner][username]}", "{board[name]}") archive_fmt = "{board[id]}_{id}" pattern = (BASE_PATTERN + r"/(?!pin/)([^/?#]+)" - "/(?!_saved|_created|pins/)([^/?#]+)/?$") + r"/(?!_saved|_created|pins/)([^/?#]+)/?(?:$|\?|#)") example = "https://www.pinterest.com/USER/BOARD/" def __init__(self, match): diff --git a/test/results/pinterest.py b/test/results/pinterest.py index 2f72272e..94b895cf 100644 --- a/test/results/pinterest.py +++ b/test/results/pinterest.py @@ -147,6 +147,12 @@ __tests__ = ( "#class" : pinterest.PinterestBoardExtractor, }, +{ + "#url" : "https://ru.pinterest.com/tarvenck/%D0%B0%D1%82%D0%BC%D0%BE%D1%81%D1%84%D0%B5%D1%80%D0%BD%D1%8B%D0%B5/?invite_code=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&sender=1111111111111111111", + "#comment" : "board URL with query string (#7805)", + "#class" : pinterest.PinterestBoardExtractor, +}, + { "#url" : "https://www.pinterest.com/g1952849/", "#category": ("", "pinterest", "user"),