Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package you-get for openSUSE:Factory checked in at 2022-07-02 15:34:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/you-get (Old) and /work/SRC/openSUSE:Factory/.you-get.new.1548 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "you-get" Sat Jul 2 15:34:42 2022 rev:44 rq:986333 version:0.4.1620 Changes: -------- --- /work/SRC/openSUSE:Factory/you-get/you-get.changes 2022-05-30 12:45:11.452489587 +0200 +++ /work/SRC/openSUSE:Factory/.you-get.new.1548/you-get.changes 2022-07-02 15:34:46.903039312 +0200 @@ -1,0 +2,5 @@ +Sat Jul 2 07:11:20 UTC 2022 - Luigi Baldoni <aloi...@gmx.com> + +- Update to version 0.4.1612 (no changelog) + +------------------------------------------------------------------- Old: ---- you-get-0.4.1612.tar.gz New: ---- you-get-0.4.1620.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ you-get.spec ++++++ --- /var/tmp/diff_new_pack.SM5iFq/_old 2022-07-02 15:34:47.463040152 +0200 +++ /var/tmp/diff_new_pack.SM5iFq/_new 2022-07-02 15:34:47.467040159 +0200 @@ -17,7 +17,7 @@ Name: you-get -Version: 0.4.1612 +Version: 0.4.1620 Release: 0 Summary: Dumb downloader that scrapes the web License: MIT ++++++ you-get-0.4.1612.tar.gz -> you-get-0.4.1620.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/Makefile new/you-get-0.4.1620/Makefile --- old/you-get-0.4.1612/Makefile 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/Makefile 2022-07-01 23:26:50.000000000 +0200 @@ -43,5 +43,7 @@ $(SETUP) install --user --prefix= release: - zenity --question - $(SETUP) sdist bdist_wheel upload --sign + #zenity --question + $(SETUP) sdist bdist_wheel + echo 'Upload new version to PyPI using:' + echo ' twine upload --sign dist/you-get-VERSION.tar.gz dist/you_get-VERSION-py3-none-any.whl' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/README.md new/you-get-0.4.1620/README.md --- old/you-get-0.4.1612/README.md 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/README.md 2022-07-01 23:26:50.000000000 +0200 @@ -57,7 +57,7 @@ The following dependencies are recommended: -* **[Python](https://www.python.org/downloads/)** 3.8 or above +* **[Python](https://www.python.org/downloads/)** 3.7.4 or above * **[FFmpeg](https://www.ffmpeg.org/)** 1.0 or above * (Optional) [RTMPDump](https://rtmpdump.mplayerhq.hu/) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/README.rst new/you-get-0.4.1620/README.rst --- old/you-get-0.4.1612/README.rst 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/README.rst 2022-07-01 23:26:50.000000000 +0200 @@ -52,7 +52,7 @@ .. |PyPI version| image:: https://badge.fury.io/py/you-get.png :target: http://badge.fury.io/py/you-get -.. |Build Status| image:: https://api.travis-ci.org/soimort/you-get.png - :target: https://travis-ci.org/soimort/you-get +.. |Build Status| image:: https://github.com/soimort/you-get/workflows/develop/badge.svg + :target: https://github.com/soimort/you-get/actions .. |Gitter| image:: https://badges.gitter.im/Join%20Chat.svg :target: https://gitter.im/soimort/you-get?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/src/you_get/extractors/instagram.py new/you-get-0.4.1620/src/you_get/extractors/instagram.py --- old/you-get-0.4.1612/src/you_get/extractors/instagram.py 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/src/you_get/extractors/instagram.py 2022-07-01 23:26:50.000000000 +0200 @@ -10,60 +10,50 @@ vid = r1(r'instagram.com/\w+/([^/]+)', url) description = r1(r'<meta property="og:title" content="([^"]*)"', cont) or \ - r1(r'<title>\s([^<]*)</title>', cont) # with logged-in cookies + r1(r'<title>([^<]*)</title>', cont) # with logged-in cookies title = "{} [{}]".format(description.replace("\n", " "), vid) - stream = r1(r'<meta property="og:video" content="([^"]*)"', cont) - if stream: - _, ext, size = url_info(stream) - - print_info(site_info, title, ext, size) - if not info_only: - download_urls([stream], title, ext, size, output_dir, merge=merge) - else: - data = re.search(r'window\._sharedData\s*=\s*(.*);</script>', cont) - try: - info = json.loads(data.group(1)) - post = info['entry_data']['PostPage'][0] - assert post['items'] - except: - # with logged-in cookies - data = re.search(r'window\.__additionalDataLoaded\(\'[^\']+\',(.*)\);</script>', cont) - if data is not None: - log.e('[Warning] Cookies needed.') - post = json.loads(data.group(1)) - - for item in post['items']: - code = item['code'] - carousel_media = item.get('carousel_media') or [item] - for i, media in enumerate(carousel_media): - title = '%s [%s]' % (code, i) - image_url = media['image_versions2']['candidates'][0]['url'] - ext = image_url.split('?')[0].split('.')[-1] - size = int(get_head(image_url)['Content-Length']) + appId = r1(r'"appId":"(\d+)"', cont) + media_id = r1(r'"media_id":"(\d+)"', cont) + + api_url = 'https://i.instagram.com/api/v1/media/%s/info/' % media_id + try: + api_cont = get_content(api_url, headers={**fake_headers, **{'x-ig-app-id': appId}}) + except: + log.wtf('[Error] Please specify a cookie file.') + post = json.loads(api_cont) + + for item in post['items']: + code = item['code'] + carousel_media = item.get('carousel_media') or [item] + for i, media in enumerate(carousel_media): + title = '%s [%s]' % (code, i) + image_url = media['image_versions2']['candidates'][0]['url'] + ext = image_url.split('?')[0].split('.')[-1] + size = int(get_head(image_url)['Content-Length']) + + print_info(site_info, title, ext, size) + if not info_only: + download_urls(urls=[image_url], + title=title, + ext=ext, + total_size=size, + output_dir=output_dir) + + # download videos (if any) + if 'video_versions' in media: + video_url = media['video_versions'][0]['url'] + ext = video_url.split('?')[0].split('.')[-1] + size = int(get_head(video_url)['Content-Length']) print_info(site_info, title, ext, size) if not info_only: - download_urls(urls=[image_url], + download_urls(urls=[video_url], title=title, ext=ext, total_size=size, output_dir=output_dir) - # download videos (if any) - if 'video_versions' in media: - video_url = media['video_versions'][0]['url'] - ext = video_url.split('?')[0].split('.')[-1] - size = int(get_head(video_url)['Content-Length']) - - print_info(site_info, title, ext, size) - if not info_only: - download_urls(urls=[video_url], - title=title, - ext=ext, - total_size=size, - output_dir=output_dir) - site_info = "Instagram.com" download = instagram_download download_playlist = playlist_not_supported('instagram') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/src/you_get/extractors/twitter.py new/you-get-0.4.1620/src/you_get/extractors/twitter.py --- old/you-get-0.4.1612/src/you_get/extractors/twitter.py 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/src/you_get/extractors/twitter.py 2022-07-01 23:26:50.000000000 +0200 @@ -53,7 +53,7 @@ info = json.loads(api_content) if item_id not in info['globalObjects']['tweets']: # something wrong here - log.w(info['timeline']['instructions'][0]['addEntries']['entries'][0]['content']['item']['content']['tombstone']['tombstoneInfo']['richText']['text']) + log.wtf('[Failed] ' + info['timeline']['instructions'][0]['addEntries']['entries'][0]['content']['item']['content']['tombstone']['tombstoneInfo']['richText']['text'], exit_code=None) return elif 'extended_entities' in info['globalObjects']['tweets'][item_id]: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/src/you_get/extractors/youtube.py new/you-get-0.4.1620/src/you_get/extractors/youtube.py --- old/you-get-0.4.1612/src/you_get/extractors/youtube.py 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/src/you_get/extractors/youtube.py 2022-07-01 23:26:50.000000000 +0200 @@ -237,7 +237,10 @@ except: # ytplayer_config = {args:{raw_player_response:ytInitialPlayerResponse}} - ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});</script>', video_page).group(1)) + try: # FIXME: we should extract ytInitialPlayerResponse more reliably + ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});</script>', video_page).group(1)) + except: + ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});', video_page).group(1)) stream_list = ytInitialPlayerResponse['streamingData']['formats'] #stream_list = ytInitialPlayerResponse['streamingData']['adaptiveFormats'] @@ -262,7 +265,10 @@ # Parse video page instead video_page = get_content('https://www.youtube.com/watch?v=%s' % self.vid) - ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});</script>', video_page).group(1)) + try: # FIXME: we should extract ytInitialPlayerResponse more reliably + ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});</script>', video_page).group(1)) + except: + ytInitialPlayerResponse = json.loads(re.search('ytInitialPlayerResponse\s*=\s*([^\n]+?});', video_page).group(1)) self.title = ytInitialPlayerResponse["videoDetails"]["title"] if re.search('([^"]*/base\.js)"', video_page): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/src/you_get/version.py new/you-get-0.4.1620/src/you_get/version.py --- old/you-get-0.4.1612/src/you_get/version.py 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/src/you_get/version.py 2022-07-01 23:26:50.000000000 +0200 @@ -1,4 +1,4 @@ #!/usr/bin/env python script_name = 'you-get' -__version__ = '0.4.1612' +__version__ = '0.4.1620' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/you-get-0.4.1612/you-get.json new/you-get-0.4.1620/you-get.json --- old/you-get-0.4.1612/you-get.json 2022-05-30 01:44:36.000000000 +0200 +++ new/you-get-0.4.1620/you-get.json 2022-07-01 23:26:50.000000000 +0200 @@ -18,8 +18,6 @@ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9",