mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-04 07:17:07 -05:00 
			
		
		
		
	[youtube] Support watch_popup URLs (Fixes #1275)
This commit is contained in:
		@@ -50,6 +50,7 @@ class TestAllURLsMatching(unittest.TestCase):
 | 
				
			|||||||
        self.assertEqual(YoutubeIE()._extract_id('http://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
					        self.assertEqual(YoutubeIE()._extract_id('http://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
				
			||||||
        self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
					        self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
				
			||||||
        self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch?feature=player_embedded&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
					        self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch?feature=player_embedded&v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
				
			||||||
 | 
					        self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch_popup?v=BaW_jenozKc'), 'BaW_jenozKc')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def test_no_duplicates(self):
 | 
					    def test_no_duplicates(self):
 | 
				
			||||||
        ies = gen_extractors()
 | 
					        ies = gen_extractors()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -141,7 +141,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
 | 
				
			|||||||
                         (?:                                                  # the various things that can precede the ID:
 | 
					                         (?:                                                  # the various things that can precede the ID:
 | 
				
			||||||
                             (?:(?:v|embed|e)/)                               # v/ or embed/ or e/
 | 
					                             (?:(?:v|embed|e)/)                               # v/ or embed/ or e/
 | 
				
			||||||
                             |(?:                                             # or the v= param in all its forms
 | 
					                             |(?:                                             # or the v= param in all its forms
 | 
				
			||||||
                                 (?:watch|movie(?:_popup)?(?:\.php)?)?              # preceding watch(_popup|.php) or nothing (like /?v=xxxx)
 | 
					                                 (?:(?:watch|movie)(?:_popup)?(?:\.php)?)?    # preceding watch(_popup|.php) or nothing (like /?v=xxxx)
 | 
				
			||||||
                                 (?:\?|\#!?)                                  # the params delimiter ? or # or #!
 | 
					                                 (?:\?|\#!?)                                  # the params delimiter ? or # or #!
 | 
				
			||||||
                                 (?:.*?&)?                                    # any other preceding param (like /?s=tuff&v=xxxx)
 | 
					                                 (?:.*?&)?                                    # any other preceding param (like /?s=tuff&v=xxxx)
 | 
				
			||||||
                                 v=
 | 
					                                 v=
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user