diff options
author | Unknown <blackjack4494@web.de> | 2020-10-18 02:14:13 +0200 |
---|---|---|
committer | Unknown <blackjack4494@web.de> | 2020-10-18 02:14:13 +0200 |
commit | a537ab1a094cf782915b654250a6110061b4377a (patch) | |
tree | 7e1bcf358f3da8593cd66c86956d9f9ad60b22b9 | |
parent | 9e20a9c4473d083189456e438424ec979de4ca6f (diff) | |
download | hypervideo-pre-a537ab1a094cf782915b654250a6110061b4377a.tar.lz hypervideo-pre-a537ab1a094cf782915b654250a6110061b4377a.tar.xz hypervideo-pre-a537ab1a094cf782915b654250a6110061b4377a.zip |
[twitter/t.co] update supportedsites, failover replace, tco:id feature
-rw-r--r-- | docs/supportedsites.md | 2 | ||||
-rw-r--r-- | youtube_dlc/extractor/twitter.py | 13 |
2 files changed, 13 insertions, 2 deletions
diff --git a/docs/supportedsites.md b/docs/supportedsites.md index 10c12b87a..c46d122ff 100644 --- a/docs/supportedsites.md +++ b/docs/supportedsites.md @@ -540,6 +540,7 @@ - **natgeo:video** - **NationalGeographicTV** - **Naver** + - **Naver:live** - **NBA** - **NBC** - **NBCNews** @@ -976,6 +977,7 @@ - **twitter:amplify** - **twitter:broadcast** - **twitter:card** + - **twitter:shortener** - **udemy** - **udemy:course** - **UDNEmbed**: 聯合影音 diff --git a/youtube_dlc/extractor/twitter.py b/youtube_dlc/extractor/twitter.py index 95cfa8154..ca5e040c6 100644 --- a/youtube_dlc/extractor/twitter.py +++ b/youtube_dlc/extractor/twitter.py @@ -612,8 +612,17 @@ class TwitterBroadcastIE(TwitterBaseIE, PeriscopeBaseIE): class TwitterShortenerIE(TwitterBaseIE): IE_NAME = 'twitter:shortener' - _VALID_URL = r'https?://t.co/' + _VALID_URL = r'https?://t.co/(?P<id>[^?]+)|tco:(?P<eid>[^?]+)' + _BASE_URL = 'https://t.co/' def _real_extract(self, url): - new_url = self._request_webpage(url, None, headers={'User-Agent': 'curl'}).geturl() + mobj = re.match(self._VALID_URL, url) + eid, id = mobj.group('eid', 'id') + if eid: + id = eid + url = self._BASE_URL + id + new_url = self._request_webpage(url, id, headers={'User-Agent': 'curl'}).geturl() + __UNSAFE_LINK = "https://twitter.com/safety/unsafe_link_warning?unsafe_link=" + if new_url.startswith(__UNSAFE_LINK): + new_url = new_url.replace(__UNSAFE_LINK, "") return self.url_result(new_url) |