profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/sbor23/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

michaelschulte/FacialExpressionAnalysis 0

Evaluation Study of the AFFDEX and FACET algorithms

sbor23/3rd-party 0

Extra 3rd party packages

sbor23/caluma 0

A collaborative form editing service

sbor23/caluma-interval 0

Caluma companion app for periodic usage of forms.

sbor23/cookiecutter-django-json-api 0

Cookiecutter template for django json api project

sbor23/django-linkcheck 0

An app that will analyze and report on links in any model that you register with it. Links can be bare (urls or image and file fields) or embedded in HTML (linkcheck handles the parsing). It's fairly easy to override methods of the Linkcheck object should you need to do anything more complicated (like generate URLs from slug fields etc).

Pull request review commentyt-dlp/yt-dlp

[playsuisse] Add new extractor

+# coding: utf-8+from __future__ import unicode_literals+import json++from .common import InfoExtractor+from ..utils import std_headers+++class PlaySuisseIE(InfoExtractor):+    _MEDIA_URL = 'https://4bbepzm4ef.execute-api.eu-central-1.amazonaws.com/prod/graphql'+    _VALID_URL = r'https?://(?:www\.)?playsuisse\.ch/watch/(?P<id1>[0-9]+)'+    _TESTS = [+        {+            'url': 'https://www.playsuisse.ch/watch/763211/0',+            'md5': '0d716b7a16c3e6ab784ef817ee9a20c1',+            'info_dict': {+                'id': '763211',+                'ext': 'mp4',+                'title': 'Wilder S01E01 - Knochen',+                'description': 'md5:8ea7a8076ba000cd9e8bc132fd0afdd8'+            }+        },+        {+            'url': 'https://www.playsuisse.ch/watch/808675/0',+            'md5': '7aa043e69fea5044db2da8bb58bca239',+            'info_dict': {+                'id': '808675',+                'ext': 'mp4',+                'title': 'Der Läufer',+                'description': 'md5:'+            }+        },+        {+            'url': 'https://www.playsuisse.ch/watch/817913/0',+            'md5': '50721c46ca0b3a9836eb61ecb0ed7097',+            'info_dict': {+                'id': '42',+                'ext': 'mp4',+                'title': 'Nr. 47 S01E01 - Die Einweihungsparty',+                'description': 'md5:'+            }+        }+    ]++    def _get_media_data(self, media_id):+        locale = std_headers.get('locale', 'de').strip()+        # TODO find out why the locale has no effect in request+        response = self._download_json(+            self._MEDIA_URL,+            media_id,+            data=json.dumps({+                'operationName': 'AssetWatch',+                'query': self._GRAPHQL_QUERY,+                'variables': {+                    "assetId": media_id+                }+            }).encode('utf-8'),+            headers={'Content-Type': 'application/json', 'locale': locale})++        return response['data']['asset']++    def _real_extract(self, url):+        media_id, = self._VALID_URL_RE.match(url).groups()+        media_data = self._get_media_data(media_id)++        def _get_title(data):+            if data.get('seriesName'):+                return '{} S{:02}E{:02} - {}'.format(+                    data['seriesName'],+                    int(data['seasonNumber']),+                    int(data['episodeNumber']),+                    data['name'])+            else:+                return data['name']++        title = _get_title(media_data)+        description = media_data['description']+        thumbnails = [+            {+                'id': thumb['id'],+                'url': thumb['url']+            }+            for key, thumb in media_data.items()+            if key.startswith('thumbnail') and thumb is not None+        ]++        for media in media_data['medias']:+            if media['type'] == 'HLS':+                formats, subtitles = self._extract_m3u8_formats_and_subtitles(+                    media['url'],+                    media_id,+                    'mp4',+                    'm3u8_native',+                    m3u8_id="HLS",+                    fatal=False)++            # NOTE seems to be 404 for all tested media+            elif media['type'] == 'DASH' and False:+                formats.extend(self._extract_mpd_formats(+                    media['url'],+                    media_id,+                    mpd_id='dash',+                    fatal=False+                ))++        return {+            'id': media_id,+            'title': title,+            'description': description,+            'thumbnails': thumbnails,+            'formats': formats,+            'subtitles': subtitles,+        }++    _GRAPHQL_QUERY = '''\

Thx for your review, will have a look shortly.

sbor23

comment created time in a day

PullRequestReviewEvent

PR opened yt-dlp/yt-dlp

[playsuisse] Add new extractor

This is a copy of the original youtube-dl PR. Now supports subtitles!

Please follow the guide below

  • You will be asked some questions, please read them carefully and answer honestly
  • Put an x into all the boxes [ ] relevant to your pull request (like that [x])
  • Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

  • [x] I am the original author of this code and I am willing to release it under Unlicense
  • [ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

  • [ ] Bug fix
  • [ ] Improvement
  • [x] New extractor
  • [ ] New feature

Description of your pull request and other information

Provide extractor for playsuisse.ch as requested in https://github.com/ytdl-org/youtube-dl/issues/27682 . The website requires authentication, which can be provided to youtube-dl using the --username, --password option, --add-header should also work. .netrc wasn't tested.

Note: This is not tested for python2. I couldn't build python2.7 using pyenv on fedora 33 for some reason, probably because python2 is unsupported.

Account information for testing purposes: E-Mail: tichis1964@einrot.com Password: asdfasdf12341234!

+297 -0

0 comment

2 changed files

pr created time in 18 days

create barnchsbor23/yt-dlp

branch : playsuisse-yt-dlp

created branch time in 18 days

fork sbor23/yt-dlp

A youtube-dl fork with additional features and fixes

https://discord.gg/H5MNcFW63r

fork in 18 days

pull request commentytdl-org/youtube-dl

[playsuisse] Add new extractor

Did some fixups and rebased on master since this is laying around for some time. The feature is ready to merge from perspective, as I mentioned before. Waiting for a maintainer to review / approve and merge.

I don't know if the videos are downloadable in other languages than german at the moment. The m3u8 files give multiple resolutions and language for the audio, but I don't know if it's selectable via CLI.

Known issues:

  • Subtitles are not supported at the moment due to: https://github.com/ytdl-org/youtube-dl/issues/6106
  • Downloading metadata in anything else than german, at least for me. It's done via the locale: fr header, it is passed to the request but not respected by the server it seems.
sbor23

comment created time in a month

push eventsbor23/youtube-dl

ping

commit sha 56a7ee903360fe89cb5372805473b508153fb856

[vlive] Fix error message decoding for python 2 (#28004)

view details

Remita Amine

commit sha ba15b2fee673f76c2cff2f193d5b4a19029b501f

[googledrive] report download page errors(closes #28005)

view details

nixxo

commit sha a800838f5afad43a76a53bdb5f4c1b20c80ff202

[vvvvid] add support for youtube embeds (#27825)

view details

Adrian Heine né Lang

commit sha 8bf9591a70757c624a8ea5bf686040ed752246e0

[AENetworks] update AENetworksShowIE test playlist id (#27851)

view details

Remita Amine

commit sha 67299f23d8b1894120e875edf97440de87e22308

[youtube] Rewrite Extractor - improve format sorting - remove unused code(swf parsing, ...) - fix series metadata extraction - fix trailer video extraction - improve error reporting - extract video location

view details

Remita Amine

commit sha 9c724601ba234085dc5071ec9c1c3d98e6834817

[youtube] remove description chapters tests video description no longer contain yt.www.watch.player.seekTo function

view details

Remita Amine

commit sha b46483a6ec6a42889fc16d53afd76d147748785f

[youtube/test_youtube_signature] fix test

view details

Remita Amine

commit sha 159a3d48dfb2b4ed77dc691433e420506c9340c3

[youtube] keep _formats array for format sorting tests

view details

Remita Amine

commit sha efef4ddf51c375c3a9eb12355a61a21d69aec33f

[youtube] fix chapter extraction fallback

view details

Remita Amine

commit sha 65eee5a745f705a7904709accdba47efb852cc6a

[youtube] improve subtitle extraction

view details

Remita Amine

commit sha 8fa7cc387d699899114f7430bcf61837d58557a8

[vidio] improve metadata extraction

view details

Remita Amine

commit sha c11f7cf9bd6ef239f25e7fb9c54e092ae1490e2d

[vidzi] remove extractor(closes #12629)

view details

Viren Rajput

commit sha 0e3a9684795c6c53546dace9e917ed11c4ae72a5

[egghead] update API domain(closes #28038)

view details

Remita Amine

commit sha b111a64135244b73b86a1720e9a5212e726afcbf

[egghead] fix typo

view details

Remita Amine

commit sha 1e2575df8714ce9056e559058a187ec0ffd2d739

Credit @adrianheine for #27732

view details

Guillem Vela

commit sha 07f7aad81c47a11483a357e53380fae1ffbadea9

[ccma] improve metadata extraction(closes #27994) - extract age_limit, alt_title, categories, series and episode_number - fix timestamp multiple subtitles extraction

view details

Remita Amine

commit sha ab25f3f43196ca56964ba34ba4674fcb2d08f69a

[youtube] pass embed URL to get_video_info request

view details

Remita Amine

commit sha 1b731ebcaa3ef2a1e52cf6968cf93e08d50fe0d4

[bravotv] add support for oxygen.com(closes #13357)(closes #22500)

view details

Sergey M․

commit sha 83031d749b11f062b9ba97023c228329e771cbd5

[pornhub:user] Add support for URLs unavailable via /videos page and improve paging (closes #27853)

view details

Sergey M․

commit sha e22ff4e35681a600ed61918beab8ed316728ec39

[pornhub] Add support for authentication (closes #18797, closes #21416, closes #24294)

view details

push time in a month

issue commentc4dt/dp3t-app-android-ch

Cannot grant bluetooth permission

Thanks for going lengths to confirm this. I tried the workaround too but was missing the "bluetooth" permission, didn't anticipate I have to check the "Location" for this. Oh well... But it works this way, thanks!

(Feel free to close if you don't want to keep it as a reminder about the upstream issue.)

sbor23

comment created time in a month