Merge pull request #7514 from ping/patch-7301
authorSergey M <dstftw@gmail.com>
Mon, 16 Nov 2015 14:25:29 +0000 (14:25 +0000)
committerSergey M <dstftw@gmail.com>
Mon, 16 Nov 2015 14:25:29 +0000 (14:25 +0000)
[neteasemusic] Fixes #7301

test/test_utils.py
youtube_dl/utils.py

index 01829f71e3b89148b06d6b0fe2eba6d15d6b5dfb..ea1ff0547cbb1e9dd081fb6b90243c0269d7d9ef 100644 (file)
@@ -210,8 +210,8 @@ class TestUtil(unittest.TestCase):
         self.assertEqual(unescapeHTML('%20;'), '%20;')
         self.assertEqual(unescapeHTML('&#x2F;'), '/')
         self.assertEqual(unescapeHTML('&#47;'), '/')
-        self.assertEqual(
-            unescapeHTML('&eacute;'), 'é')
+        self.assertEqual(unescapeHTML('&eacute;'), 'é')
+        self.assertEqual(unescapeHTML('&#2013266066;'), '&#2013266066;')
 
     def test_daterange(self):
         _20century = DateRange("19000101", "20000101")
index d39f313a41802f38f91418e12cc89dcd798b0286..d00b14b86d8ea8d43aef6bd7cf5a575cda5f94af 100644 (file)
@@ -396,10 +396,14 @@ def _htmlentity_transform(entity):
             numstr = '0%s' % numstr
         else:
             base = 10
-        return compat_chr(int(numstr, base))
+        # See https://github.com/rg3/youtube-dl/issues/7518
+        try:
+            return compat_chr(int(numstr, base))
+        except ValueError:
+            pass
 
     # Unknown entity in name, return its literal representation
-    return ('&%s;' % entity)
+    return '&%s;' % entity
 
 
 def unescapeHTML(s):