Hello community,

here is the log from the commit of package you-get for openSUSE:Factory checked 
in at 2018-09-11 17:18:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/you-get (Old)
 and      /work/SRC/openSUSE:Factory/.you-get.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "you-get"

Tue Sep 11 17:18:03 2018 rev:10 rq:634464 version:0.4.1140

Changes:
--------
--- /work/SRC/openSUSE:Factory/you-get/you-get.changes  2018-08-12 
20:55:05.969433933 +0200
+++ /work/SRC/openSUSE:Factory/.you-get.new/you-get.changes     2018-09-11 
17:18:10.695329035 +0200
@@ -1,0 +2,5 @@
+Sat Sep  8 11:44:26 UTC 2018 - [email protected]
+
+- Update to version 0.4.1140 (no changelog supplied)
+
+-------------------------------------------------------------------

Old:
----
  you-get-0.4.1128.tar.gz

New:
----
  you-get-0.4.1140.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ you-get.spec ++++++
--- /var/tmp/diff_new_pack.pQUEdi/_old  2018-09-11 17:18:11.235328208 +0200
+++ /var/tmp/diff_new_pack.pQUEdi/_new  2018-09-11 17:18:11.235328208 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           you-get
-Version:        0.4.1128
+Version:        0.4.1140
 Release:        0
 Summary:        Dumb downloader that scrapes the web
 License:        MIT

++++++ you-get-0.4.1128.tar.gz -> you-get-0.4.1140.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/baidu.py 
new/you-get-0.4.1140/src/you_get/extractors/baidu.py
--- old/you-get-0.4.1128/src/you_get/extractors/baidu.py        2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/baidu.py        2018-09-08 
00:48:10.000000000 +0200
@@ -129,8 +129,9 @@
             html = get_html(url)
             title = r1(r'title:"([^"]+)"', html)
 
-            vhsrc = re.findall(r'"BDE_Image"[^>]+src="([^"]+)"', html) or 
re.findall(r'vhsrc="([^"]+)"', html)
-            if vhsrc is not None:
+            vhsrc = re.findall(r'"BDE_Image"[^>]+src="([^"]+\.mp4)"', html) or 
\
+                re.findall(r'vhsrc="([^"]+)"', html)
+            if len(vhsrc) > 0:
                 ext = 'mp4'
                 size = url_size(vhsrc[0])
                 print_info(site_info, title, ext, size)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/bilibili.py 
new/you-get-0.4.1140/src/you_get/extractors/bilibili.py
--- old/you-get-0.4.1128/src/you_get/extractors/bilibili.py     2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/bilibili.py     2018-09-08 
00:48:10.000000000 +0200
@@ -144,11 +144,13 @@
         else:
             playinfo = re.search(r'__INITIAL_STATE__=(.*?);\(function\(\)', 
self.page)
             if playinfo is not None:
-                pages = json.loads(playinfo.group(1))['videoData']['pages']
-                if len(pages) > 1:
-                    qs = 
dict(parse.parse_qsl(urllib.parse.urlparse(self.url).query))
-                    page = pages[int(qs.get('p', 1)) - 1]
-                    self.title = '{} #{}. {}'.format(self.title, page['page'], 
page['part'])
+                jsonPlayinfo = json.loads(playinfo.group(1))
+                if 'videoData' in jsonPlayinfo:
+                    pages = jsonPlayinfo['videoData']['pages']
+                    if len(pages) > 1:
+                        qs = 
dict(parse.parse_qsl(urllib.parse.urlparse(self.url).query))
+                        page = pages[int(qs.get('p', 1)) - 1]
+                        self.title = '{} #{}. {}'.format(self.title, 
page['page'], page['part'])
 
         if 'bangumi.bilibili.com/movie' in self.url:
             self.movie_entry(**kwargs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/lizhi.py 
new/you-get-0.4.1140/src/you_get/extractors/lizhi.py
--- old/you-get-0.4.1128/src/you_get/extractors/lizhi.py        2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/lizhi.py        2018-09-08 
00:48:10.000000000 +0200
@@ -2,8 +2,17 @@
 
 __all__ = ['lizhi_download']
 import json
+import datetime
 from ..common import *
 
+#
+# Worked well but not perfect.
+# TODO: add option --format={sd|hd}
+#
+def get_url(ep):
+    readable = datetime.datetime.fromtimestamp(int(ep['create_time']) / 
1000).strftime('%Y/%m/%d')
+    return 'http://cdn5.lizhi.fm/audio/{}/{}_hd.mp3'.format(readable, ep['id'])
+
 # radio_id: e.g. 549759 from http://www.lizhi.fm/549759/
 #
 # Returns a list of tuples (audio_id, title, url) for each episode
@@ -23,7 +32,7 @@
     # (au_cnt), then handle pagination properly.
     api_url = 'http://www.lizhi.fm/api/radio_audios?s=0&l=65535&band=%s' % 
radio_id
     api_response = json.loads(get_content(api_url))
-    return [(ep['id'], ep['name'], ep['url']) for ep in api_response]
+    return [(ep['id'], ep['name'], get_url(ep)) for ep in api_response]
 
 def lizhi_download_audio(audio_id, title, url, output_dir='.', 
info_only=False):
     filetype, ext, size = url_info(url)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/twitter.py 
new/you-get-0.4.1140/src/you_get/extractors/twitter.py
--- old/you-get-0.4.1128/src/you_get/extractors/twitter.py      2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/twitter.py      2018-09-08 
00:48:10.000000000 +0200
@@ -30,9 +30,9 @@
         return
 
     html = get_html(url, faker=True)
-    screen_name = r1(r'data-screen-name="([^"]*)"', html) or \
+    screen_name = r1(r'twitter\.com/([^/]+)', url) or 
r1(r'data-screen-name="([^"]*)"', html) or \
         r1(r'<meta name="twitter:title" content="([^"]*)"', html)
-    item_id = r1(r'data-item-id="([^"]*)"', html) or \
+    item_id = r1(r'twitter\.com/[^/]+/status/(\d+)', url) or 
r1(r'data-item-id="([^"]*)"', html) or \
         r1(r'<meta name="twitter:site:id" content="([^"]*)"', html)
     page_title = "{} [{}]".format(screen_name, item_id)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/youku.py 
new/you-get-0.4.1140/src/you_get/extractors/youku.py
--- old/you-get-0.4.1128/src/you_get/extractors/youku.py        2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/youku.py        2018-09-08 
00:48:10.000000000 +0200
@@ -78,7 +78,7 @@
         self.api_error_code = None
         self.api_error_msg = None
 
-        self.ccode = '0508'
+        self.ccode = '0516'
         # Found in 
http://g.alicdn.com/player/ykplayer/0.5.64/youku-player.min.js
         # grep -oE '"[0-9a-zA-Z+/=]{256}"' youku-player.min.js
         self.ckey = 
'DIl58SLFxFNndSV1GFNnMQVYkx1PP5tKe1siZu/86PR1u/Wh1Ptd+WOZsHHWxysSfAOhNJpdVWsdVJNsfJ8Sxd8WKVvNfAS8aS8fAOzYARzPyPc3JvtnPHjTdKfESTdnuTW6ZPvk2pNDh4uFzotgdMEFkzQ5wZVXl2Pf1/Y6hLK0OnCNxBj3+nb0v72gZ6b0td+WOZsHHWxysSo/0y9D2K42SaB8Y/+aD2K42SaB8Y/+ahU+WOZsHcrxysooUeND'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/extractors/youtube.py 
new/you-get-0.4.1140/src/you_get/extractors/youtube.py
--- old/you-get-0.4.1128/src/you_get/extractors/youtube.py      2018-08-10 
16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/src/you_get/extractors/youtube.py      2018-09-08 
00:48:10.000000000 +0200
@@ -37,6 +37,9 @@
     ]
 
     def decipher(js, s):
+        # Examples:
+        # - https://www.youtube.com/yts/jsbin/player-da_DK-vflWlK-zq/base.js
+        # - https://www.youtube.com/yts/jsbin/player-vflvABTsY/da_DK/base.js
         def tr_js(code):
             code = re.sub(r'function', r'def', code)
             code = re.sub(r'(\W)(as|if|in|is|or)\(', r'\1_\2(', code)
@@ -52,7 +55,8 @@
             return code
 
         js = js.replace('\n', ' ')
-        f1 = match1(js, r'"signature",([$\w]+)\(\w+\.\w+\)')
+        f1 = match1(js, r'\.set\(\w+\.sp,([$\w]+)\(\w+\.s\)\)') or \
+            match1(js, r'"signature",([$\w]+)\(\w+\.\w+\)')
         f1def = match1(js, r'function %s(\(\w+\)\{[^\{]+\})' % re.escape(f1)) 
or \
                 match1(js, r'\W%s=function(\(\w+\)\{[^\{]+\})' % re.escape(f1))
         f1def = re.sub(r'([$\w]+\.)([$\w]+\(\w+,\d+\))', r'\2', f1def)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/util/os.py 
new/you-get-0.4.1140/src/you_get/util/os.py
--- old/you-get-0.4.1128/src/you_get/util/os.py 2018-08-10 16:40:12.000000000 
+0200
+++ new/you-get-0.4.1140/src/you_get/util/os.py 2018-09-08 00:48:10.000000000 
+0200
@@ -19,9 +19,11 @@
     elif 'linux' in syst:
         os = 'linux'
         # detect WSL https://github.com/Microsoft/BashOnWindows/issues/423
-        with open('/proc/version', 'r') as f:
-            if 'microsoft' in f.read().lower():
-                os = 'wsl'
+        try:
+            with open('/proc/version', 'r') as f:
+                if 'microsoft' in f.read().lower():
+                    os = 'wsl'
+        except: pass
     elif 'windows' in syst:
         os = 'windows'
     elif 'bsd' in syst:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/src/you_get/version.py 
new/you-get-0.4.1140/src/you_get/version.py
--- old/you-get-0.4.1128/src/you_get/version.py 2018-08-10 16:40:12.000000000 
+0200
+++ new/you-get-0.4.1140/src/you_get/version.py 2018-09-08 00:48:10.000000000 
+0200
@@ -1,4 +1,4 @@
 #!/usr/bin/env python
 
 script_name = 'you-get'
-__version__ = '0.4.1128'
+__version__ = '0.4.1140'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/you-get-0.4.1128/tests/test.py 
new/you-get-0.4.1140/tests/test.py
--- old/you-get-0.4.1128/tests/test.py  2018-08-10 16:40:12.000000000 +0200
+++ new/you-get-0.4.1140/tests/test.py  2018-09-08 00:48:10.000000000 +0200
@@ -31,14 +31,5 @@
             info_only=True
         )
 
-    def test_bilibili(self):
-        bilibili.download(
-            'https://www.bilibili.com/video/av16907446/', info_only=True
-        )
-        bilibili.download(
-            'https://www.bilibili.com/video/av13228063/', info_only=True
-        )
-
-
 if __name__ == '__main__':
     unittest.main()


Reply via email to