Commit graph

996 commits

Author SHA1 Message Date
TobiGr
edf8dd0e92 [media.ccc.de] Fix NPE in search results if they contain a future talk 2020-12-30 18:34:28 +01:00
Tobias Groza
3c8c8e7307
Merge pull request #497 from TiA4f8R/fix-player-js-url-redirect
Fix YouTube player JavaScript URL redirection
2020-12-27 18:04:40 +01:00
TiA4f8R
d30caeb091
Fix YouTube player JavaScript URL redirection 2020-12-27 15:55:03 +01:00
TobiGr
deb9af7bf5 [media.ccc.de] live kiosk - display info of the current talk 2020-12-27 15:52:09 +01:00
TobiGr
b4e1913971 [media.ccc.de] Play live streams 2020-12-27 13:25:48 +01:00
TobiGr
80f4d42226 [Draft] Add live extractor 2020-12-27 11:01:22 +01:00
TobiGr
ed9402c002 [media.ccc.de] Escape "." in id pattern 2020-12-27 11:01:10 +01:00
TobiGr
674f2227f3 make url pattern static 2020-12-27 01:27:37 +01:00
TobiGr
0cfefe222a Revert "[media.ccc.de] Get conference name from API URL"
This reverts commit d1a0686d2f.
2020-12-26 16:55:44 +01:00
TobiGr
d1a0686d2f [media.ccc.de] Get conference name from API URL 2020-12-26 13:15:03 +01:00
TobiGr
41699798fe [media.ccc.de] Use web URL for uploaderUrl instead of API URL in recent 2020-12-26 12:47:32 +01:00
TobiGr
ed6ae329b3 [media.ccc.de] Add "recent" kiosk 2020-12-25 22:26:58 +01:00
Tobias Groza
b5e50cc9fb
Merge pull request #484 from TeamNewPipe/yt_,music_search
Fix YouTube Music search
2020-12-25 18:30:25 +01:00
TobiGr
d9e2da53c3 Replace explicit string checks whether a playlist íd is a certain YouTube Mix type with calling the dedicated methods 2020-12-25 15:00:34 +01:00
TobiGr
abee0a8df1 Fix typos in YoutubePlaylistLinkHandlerFactory 2020-12-24 10:34:21 +01:00
TobiGr
3033c0b993 [YouTube] Music Mix: Fix playlist not being accepted
Regression introduced by YouTube Mix support (#280)
2020-12-23 21:08:36 +01:00
TobiGr
b62144b49d [YouTube] Music: Fix search extraction caused by changed JSON response 2020-12-23 21:08:36 +01:00
TobiGr
c9d9bd1e24 Fix typo in ListLinkHandlerFactory#getUrl 2020-12-23 21:05:58 +01:00
3ae924a7f1 Implement sepia search 2020-12-23 15:07:55 +01:00
TobiGr
942d840624 Fix typo in AffiliateService: rename "NO_AFILIATE" to "NO_AFFILIATE" 2020-12-23 12:50:45 +01:00
TobiGr
865c42e273 Fix line break 2020-12-23 12:49:50 +01:00
Fynn Godau
c9e9953bb0 [Bandcamp] Fix channel link handler factory 2020-12-22 20:02:53 +01:00
TobiGr
41a8ed625d Make some vars final and add annotations to methods 2020-12-22 18:19:26 +01:00
TobiGr
bc6de14952 Extract stream and search meta info for YouTube
Add method to extract Google webcache URLs.
2020-12-22 18:19:26 +01:00
TobiGr
50903730b1 [Bandcamp] Fix accepting HTTP URLs 2020-12-22 08:53:10 +01:00
8d3436565f [peertube] fix related streams api url when no tags
fixes #489
2020-12-19 23:25:37 +01:00
Tobias Groza
22a415156f
Merge pull request #479 from vkay94/stream-segments
Extract stream segments for YouTube
2020-12-19 11:12:22 +01:00
TobiGr
74b46fed2d [Bandcamp] Fix deprecation in parseDate helper function 2020-12-19 10:40:21 +01:00
TobiGr
116e921d6c Merge remote-tracking branch 'origin/dev' into bandcamp 2020-12-19 00:26:11 +01:00
XiangRongLin
cdcb66b93e Clean up stuff from mix pl
Coming from unclean merge and missing hints from IDE
2020-12-16 08:35:28 +01:00
XiangRongLin
ba8782a9ed Use lowercase string for extracting cookies
The map in a real response happens to ignore upper-/lowercase differences. Other maps used in unit test may not have that behaviour.
2020-12-16 08:32:04 +01:00
Stypox
85fa006214
Merge pull request #280 from XiangRongLin/mixPL
Extractor for youtube mix (auto-generated playlist)
2020-12-14 18:11:07 +01:00
XiangRongLin
f90f6fcf92 [YouTube] Don't escape & in getUrlFromNavigationEndpoint for playlists 2020-12-12 20:40:13 +01:00
Xiang Rong Lin
a338e4e08e [Youtube] Apply review suggestions and avoid channel mix edge case 2020-12-12 20:32:43 +01:00
Xiang Rong Lin
22d2f7e400 [Youtube] Add cookies to youtube mix request
This way youtube wont return duplicates when getting more items of the mix (but youtube can also track us)
2020-12-12 20:32:40 +01:00
Stypox
421935401f [Youtube] Add subchannel functions to mix and fix imports 2020-12-12 20:30:57 +01:00
Xiang Rong Lin
3ff8619bcc [Youtube] apply wb9688 suggestion (mix)
Channel mix adjusments and test
Don't accept youtube music mix urls as playlist
Don't override playlistData to keep getInitialPage()
Remove json constants
Indentation
2020-12-12 20:30:57 +01:00
Xiang Rong Lin
822cf307f7 [Youtube] Add _ITEMS constants and improve code style
Move thumbnail id exctraction code to getThumbnailUrlFromId
Add test for "My mix" detection to service tests
Use ITEM_COUNT_UNKNOWN everywhere instead of -1 and add some tests
2020-12-12 20:30:57 +01:00
Xiang Rong Lin
df38b1926c [Youtube] Add tests and take thumbnail image always from first video of mix
Also fix getThumbnailUrl for "My Mix"
2020-12-12 20:30:57 +01:00
Xiang Rong Lin
68a3948af6 [Youtube] Fix get banner url 2020-12-12 20:30:57 +01:00
Xiang Rong Lin
ec6b99c082 [Youtube] Adjust mix extractor to new user agent
Also extract continuation now
2020-12-12 20:30:57 +01:00
Xiang Rong Lin
0ff054acb4 [Youtube] Extract initial playlist info 2020-12-12 20:30:57 +01:00
Xiang Rong Lin
a376792a5d [Youtube] Handle case where url is in "youtube.com/playlist?list=listID" format.
This occurs when sharing a mix from the official youtube app.
2020-12-12 20:30:57 +01:00
Xiang Rong Lin
327a5730a8 [Youtube] Add some comments to mix 2020-12-12 20:30:57 +01:00
Xiang Rong Lin
d74265c846 [Youtube] Extract getThumbnailUrl into method and change getUploaderName 2020-12-12 20:30:57 +01:00
Xiang Rong Lin
0efb854d27 [Youtube] Implement mix extractor for auto-generated playlists.
-New YoutubeMixPlaylistExtractor, that extracts from a mix (auto-generated playlist).
-The url has the format of "youtube.com/watch?v=videoID&playlistID",
where playlistID always starts with "RD" and usually followed by the videoID.
-Change YoutubePlaylistLinkHandlerFactory to create a linkhandler with the given url if it is a mix.
-Change YoutubeService to return YoutubeMixPlaylistExtractor if the url is a mix.
2020-12-12 20:30:57 +01:00
vkay94
2ba27b39af Stream segments: Remove replaceAll from setPreviewUrl 2020-12-12 15:00:45 +01:00
vkay94
d3eea4f4be Add stream segments to StreamInfo 2020-12-12 10:24:29 +01:00
Isira Seneviratne
57be1f1123 Use Objects.requireNonNull(). 2020-12-11 06:09:57 +05:30
Isira Seneviratne
4c19a88612 Use Objects.toString(). 2020-12-11 06:09:50 +05:30
Isira Seneviratne
b8f64595a2 Use Objects' static equals() and hashCode() methods. 2020-12-11 06:09:44 +05:30
vkay94
9dbacbc618 Fix comments parsing 2020-12-09 14:57:38 +01:00
Fynn Godau
04dd3d4d32 Rework link handlers to correctly accept external websites 2020-12-05 15:08:26 +01:00
TheAssassin
ba3e2302bc Fix name of media.ccc.de service 2020-12-01 23:54:27 +01:00
Tobias Groza
b7a995187f
Merge pull request #463 from opusforlife2/update_invidious_URLs
Update Invidious URL List
2020-11-28 13:30:32 +01:00
TobiGr
99e7ef013e [Bandcamp] Apply small changes to code formatting and style
Make variables final when possible
Remove unused imports
Improve code formatting
2020-11-24 14:13:31 +01:00
fynngodau
8c369b0f79
Rephrase link in javadoc
Co-authored-by: Tobias Groza <TobiGr@users.noreply.github.com>
2020-11-24 14:01:31 +01:00
Fynn Godau
186936d041 Various changes regarding tests 2020-11-19 22:33:52 +01:00
Fynn Godau
6bc7e3420e Merge TNP/dev into fynngodau/dev 2020-11-19 21:32:08 +01:00
XiangRongLin
5bceff0083 [YouTube] Fix extraction of next page url for the last page of playlist 2020-11-18 19:03:12 +01:00
XiangRongLin
8347e14952 [YouTube] Fix playlist continuations extraction 2020-11-17 21:04:53 +01:00
opusforlife2
2174055ef8
Update Invidious URL list in Parsing Helper 2020-11-11 15:12:31 +00:00
opusforlife2
c0afd5213a
Update Invidious URL list in Link Handler Factory 2020-11-11 14:54:16 +00:00
Stypox
89a77ae74a
[YouTube] Fix detection of ended livestreams and parse livestream upload date 2020-11-04 16:03:08 +01:00
Stypox
827f7bd137
[YouTube] Cache deobfuscation and improve requests made
Fix age restriction extraction
Automatically fixes more things
2020-11-04 16:02:12 +01:00
Isira Seneviratne
4fe28d7e3a Fix YouTube parse error when only a date is present. 2020-11-04 05:49:42 +05:30
Isira Seneviratne
9cf9e7e980 Call existing constructor in DateWrapper. 2020-11-04 05:49:41 +05:30
Isira Seneviratne
fe31a90cb3 Remove DateTimeFormatter.ISO_OFFSET_DATE_TIME usage. 2020-11-04 05:49:41 +05:30
Tobias Groza
b13c7e1c1e
Merge pull request #452 from Stypox/yt-import
Implement YouTube subscription import from Google takeout
2020-11-03 20:32:17 +01:00
Stypox
501ec30152
Implement youtube subscription import from Google takeout 2020-11-02 11:04:48 +01:00
Bri@n
82746d172f Fix typo in DonationLinkHelper and rewrote swtich statement 2020-11-01 17:34:34 -05:00
TobiGr
be9e160333 Fix build 2020-11-01 17:04:02 +01:00
Isira Seneviratne
4f04cfccca Switch from Calendar to OffsetDateTime in DateWrapper. 2020-11-01 06:28:54 +05:30
Isira Seneviratne
ee3af63c04 Switch to ChronoUnit. 2020-11-01 06:28:53 +05:30
Stypox
6cc50b57e3
Merge pull request #410 from Scrxtchy/sets-track-title
Fix parsing Soundcloud tracks that contain the term 'sets'
2020-10-31 21:43:21 +01:00
Stypox
b242e1d113
Merge pull request #362 from Stypox/google-search-urls
Add support for Google search redirect url
2020-10-31 21:03:48 +01:00
Stypox
9e53cf0b56
Fix parameter reassignment and other style issues
Also remove left-behind debug statement
2020-10-31 20:58:28 +01:00
Stypox
3fe55b30ba
Add support for Google search redirect url 2020-10-31 20:58:28 +01:00
Stypox
c190a3029b
Consider protocol as base url when it is a custom one (e.g. vnd.youtube) 2020-10-31 20:58:28 +01:00
b21e59925d [PeerTube] fix account and channel extractors 2020-10-29 19:52:29 +01:00
Stypox
30ed4f2d63
Remove any reference to decrypt and improve error message 2020-10-28 20:26:00 +01:00
TobiGr
62912ee834 Merge branch 'master' into dev 2020-10-28 14:28:06 +01:00
Scratch
947ce3ee10 Fix parsing Soundcloud tracks that contain the term 'sets' 2020-10-28 07:55:02 +11:00
6dc5ab4015 find playerUrl in another place when assetsPattern regex fails 2020-10-27 13:48:58 +01:00
db0ef83d6b fix youtube decryption and three attemps bug
fixes teamnewpipe/newpipe#4572 fixes #439
2020-10-27 13:40:24 +01:00
c1e9857960 fix subscriber count when subscribe is disabled
fixes #305
2020-10-26 19:06:01 +01:00
a39a2cca82 fix redirect channels 2020-10-26 19:05:19 +01:00
01f49e8f66 polish strings 2020-10-26 16:32:39 +01:00
Tobias Groza
14c0c37d64
Merge pull request #309 from Stypox/improve-stream-tests
Improve stream extractor tests & various fixes
2020-10-25 18:49:53 +01:00
Kiril Isakov
366ed71523
[YouTube] Ignore leading characters in video id 2020-10-25 14:34:20 +01:00
Stypox
8026304a0a
Merge pull request #409 from Bartoshr/bugfix/short-channel-urls
Support short custom YouTube channel URLs
2020-10-25 11:43:50 +01:00
Stypox
57e7994c9e
Add some missing finals, nullables and comments 2020-10-25 08:12:41 +01:00
Stypox
d0b14644bb
[YouTube/MediaCCC] Consider dates as GMT and not as local 2020-10-24 18:41:41 +02:00
Stypox
a4097d8d01
[MediaCCC] Return empty list of video-only streams instead of null 2020-10-24 18:39:55 +02:00
Stypox
68d23defba
[YouTube] Do not catch every exception on getErrorMessage
@B0pol suggestion
2020-10-24 18:39:55 +02:00
Stypox
3191bd6c70
[YouTube] Use final when possible 2020-10-24 18:39:55 +02:00
Stypox
55bc01d1ce
[SoundCloud] Use final when possible, ide refactorings 2020-10-24 18:39:55 +02:00
Stypox
06430c4749
[PeerTube] Use final when possible, ide refactorings 2020-10-24 18:39:06 +02:00
Stypox
fcb9b6f855
[MediaCCC] Use final when possible, ide refactorings
Refactorings on `throws` clause
2020-10-24 18:36:22 +02:00
Stypox
07a90d116a
[MediaCCC] Use regex to parse stream and conference urls 2020-10-24 18:36:21 +02:00
Stypox
d130fd79c3
[PeerTube] Prepend "accounts/" to channel id for backward compatibility 2020-10-24 18:36:21 +02:00
Stypox
492db83ccf
[MediaCCC] Return null instead of empty items collector
As per the documentation in the base getRelatedStreams()
2020-10-24 18:34:57 +02:00
Stypox
3b2a1829d4
[MediaCCC] Extract tags 2020-10-24 18:34:57 +02:00
Stypox
b461da792f
[MediaCCC] Fix link handler inconsistency providing API links 2020-10-24 18:34:34 +02:00
Stypox
aeeae87641
[PeerTube] Parse timestamp from url (previously unimplemented) 2020-10-24 18:33:42 +02:00
Stypox
7ae3cb6d07
[PeerTube] Fix link handler inconsistency providing API links 2020-10-24 18:33:11 +02:00
Stypox
4349be13af
[PeerTube] Return empty audio stream list instead of null 2020-10-24 18:25:56 +02:00
Stypox
3b2cfb4ca2
[SoundCloud] Return empty video stream list instead of null
Also replace every instance of `return new ArrayList<>();` with `return Collections.emptyList();`
2020-10-24 18:23:46 +02:00
Stypox
072bae321f
[YouTube] Fix frame extraction for livestreams
Use saved playerResponse instead of parsing json every time
2020-10-24 18:23:46 +02:00
Stypox
7cd410f3fc
[YouTube] Return 0 when there is no timestamp, not -2, as per javadoc 2020-10-24 18:23:45 +02:00
Stypox
7fb867c166
[YouTube] Fix error message obtaining when there is none 2020-10-24 18:22:44 +02:00
Bartosz Rumiński
29695aed0a Small field refactor 2020-10-23 16:42:30 +02:00
Bartosz Rumiński
0e67d820bc Use static regex pattern for excluded path segments 2020-10-22 20:13:29 +02:00
Bartosz Rumiński
d3f80d1538 Exlude links which are not channels 2020-10-20 20:06:06 +02:00
Stypox
6887d59570
[YouTube] Handle urls for Shorts 2020-10-18 12:03:01 +02:00
wb9688
be9a6f931c Fix parsing new ytInitialData 2020-10-16 20:27:40 +02:00
Tobias Groza
1a9bc8caf1
Merge pull request #414 from Scrxtchy/soundcloud-slash
Remove tailing slash from SoundCloud URLs
2020-10-16 09:48:44 +02:00
Scratch
6a70cb9d50 Remove tailing slash from SoundCloud URLs
Fixes #412
2020-10-16 17:17:40 +11:00
Stypox
19e862657a
[YouTube] Fix some decryption exceptions by retrying 2020-10-15 20:16:44 +02:00
Bartosz Rumiński
e3f996e014 Exlude links which are not channels 2020-10-12 20:59:56 +02:00
Bartosz Rumiński
7abb4b3713
Update extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/linkHandler/YoutubeChannelLinkHandlerFactory.java
Fix typos

Co-authored-by: Tobias Groza <TobiGr@users.noreply.github.com>
2020-10-12 19:57:45 +02:00
Bartosz Rumiński
9d63211a66
Fix typos
Co-authored-by: Tobias Groza <TobiGr@users.noreply.github.com>
2020-10-12 19:56:53 +02:00
Bartosz Rumiński
8c38a5509e Prevent attribution_link urls to be accepted by channel links handler 2020-10-09 19:07:38 +02:00
Bartosz Rumiński
4e04991762 Support short custom youtube channel urls 2020-10-09 17:06:59 +02:00
Fynn Godau
81b5e7cf3d Fix extractor 2020-10-08 17:56:03 +02:00
wb9688
ebbfe7f6d4 Skip YouTube's OTF streams 2020-09-29 10:48:02 +02:00
Tobias Groza
6633f26ec5
Merge pull request #386 from mhmdanas/remove-subtitles-stream-get-url
Remove SubtitlesStream#getURL()
2020-08-26 21:32:36 +02:00
wb9688
7657c2ed1a Use initSafeStandardsObjects() 2020-08-15 17:08:07 +02:00
mhmdanas
1a63dcb355 Remove overriden field url 2020-08-12 22:37:36 +03:00
mhmdanas
f0f1c009b2 Remove SubtitlesStream#getURL() 2020-08-10 19:28:56 +03:00
Fynn Godau
cfe88a74c1 Throw ContentNotSupportedException when opening radio uploader channel 2020-08-09 10:07:49 +02:00
TobiGr
0fb73301e3 [YouTube] Fix crash on empty comment
Closes #380
2020-08-05 18:25:40 +02:00
Fynn Godau
932d094d6a Upgrade featured playlist urls to https 2020-08-02 16:55:18 +02:00
Fynn Godau
c12ef3a02d Merge TNP/dev into fynngodau/dev 2020-08-02 16:43:04 +02:00
TobiGr
5ac80624a4 Fix detection of YouTube's decryption function
Closes TeamNewPipe/NewPipe#3951
2020-07-28 01:01:10 +02:00
Tobias Groza
32dff1541f
Merge pull request #370 from wb9688/fix-yt-age-restricted
Fix age restricted YouTube videos
2020-07-26 14:17:19 +02:00
TobiGr
ec778200d9 Add comments to the code 2020-07-26 14:15:13 +02:00
wb9688
667dce034c Only use fallback methods for clientVersion when clientVersion hasn't been successfully extracted yet 2020-07-26 13:14:25 +02:00
wb9688
f345f667e2 Extract YouTube's key 2020-07-26 12:01:59 +02:00
wb9688
4c987a5302 Support YouTube's new continuations for search 2020-07-26 10:01:03 +02:00
wb9688
81459e289f Fix age restricted YouTube videos 2020-07-18 19:52:54 +02:00
wb9688
fc3a63fec5 Update Javadoc for getRelatedStreams() 2020-07-15 18:48:37 +02:00
wb9688
ff560e907a Remove getNextStream() from StreamExtractor 2020-07-15 18:48:37 +02:00
Tobias Groza
a70cb0283f
Merge pull request #314 from wb9688/remove-getnextpageurl
Next page stuff
2020-07-07 20:49:38 +02:00
wb9688
0a5a905bc7 Add final at more places 2020-07-07 20:45:47 +02:00
wb9688
17ba8a57fa Clean up the code 2020-07-06 20:19:31 +02:00
wb9688
9b6fe1dea6 Throw IllegalArgumentException when Page is invalid 2020-07-06 20:19:31 +02:00
wb9688
4cc312086a Introduce Page class 2020-07-06 20:19:31 +02:00
wb9688
e3bfdba135 Remove getNextPageUrl() function from ListExtractor 2020-07-06 20:11:40 +02:00
wb9688
156a26b64b Support start= timestamps for YouTube 2020-07-06 14:08:40 +02:00
eb3901acee update invidious instances 2020-07-02 21:31:05 +02:00
Tobias Groza
c0ceb5cb27
Merge pull request #340 from wb9688/peertube-deleted-comments
Handle isDeleted for PeerTube comments
2020-06-28 10:21:37 +02:00
Tobias Groza
970bc7f69d
Merge pull request #359 from mauriciocolli/fix-client-id-bug
[SoundCloud] Fix concurrency issue when getting the client id
2020-06-27 17:36:24 +02:00
Robin
576754982e
Update extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/YoutubeParsingHelper.java
Co-authored-by: Tobias Groza <TobiGr@users.noreply.github.com>
2020-06-27 11:35:01 +02:00
Mauricio Colli
7505e828cc
[SoundCloud] Update client id 2020-06-24 01:50:09 -03:00
Mauricio Colli
d2f1c0f40d
[SoundCloud] Fix concurrency issue when getting the client id 2020-06-24 01:50:08 -03:00
Robin
b63ae93495
Added a comment
and fixed a "typo" in the method parseDurationString replacing Long with Integer.

These are not the droids you are looking for wb9688 😁
2020-06-15 11:27:44 +02:00
Tobias Groza
92f6754f0f
Merge pull request #338 from wb9688/parse-duration-string-test
Add tests for parseDurationString()
2020-06-15 11:01:21 +02:00
wb9688
3239aa84f2 Handle isDeleted for PeerTube comments 2020-06-14 19:27:20 +02:00
Fynn Godau
96de834b67 Bandcamp: parse date from radio info item 2020-06-04 19:36:58 +02:00
Fynn Godau
4dd9540782 Bandcamp license switch order 2020-06-04 19:27:39 +02:00
Fynn Godau
0950a95577 Fix for testing wrong object for null or empty 2020-06-04 19:16:08 +02:00
Fynn Godau
27e7aad159 Bandcamp: Improve code style 2020-06-04 19:04:25 +02:00
fynngodau
ea49202f64
Don't display internal license id
Co-authored-by: bopol <bopol@e.email>
2020-06-04 18:26:58 +02:00
063f4be766 For #342: support PeerTube embeds 2020-06-04 14:26:42 +02:00
Fynn Godau
34b6928124 Don't print stacktrace before throwing new exception 2020-06-04 14:25:38 +02:00
Fynn Godau
1be20ceeec Bandcamp: parse date 2020-06-04 14:09:21 +02:00
Fynn Godau
6822fe3dc8 Bandcamp: Get Stream upload date 2020-06-04 13:03:16 +02:00
Fynn Godau
de776561b0 Bandcamp: fix loading uploader from streams in search 2020-06-04 12:02:18 +02:00
Fynn Godau
3940138fc5 Fix Bandcamp capitalization in one more spot 2020-06-03 22:41:27 +02:00
Fynn Godau
9fa9d920a9 Bandcamp: Implement new methods required due to interface changes 2020-06-03 21:35:11 +02:00
Fynn Godau
dd955c7f0c Merge branch 'origin/dev' into dev 2020-06-03 21:13:40 +02:00
wb9688
33b1121fc7 Add tests for parseDurationString() 2020-05-30 17:20:54 +02:00
wb9688
e39147202c Fix YouTube video duration parsing 2020-05-30 09:31:08 +02:00
wb9688
98055a3c3c Revert "Add more decryption function regexes"
This reverts commit 384d6acd5d.
2020-05-29 18:41:40 +02:00
Tobias Groza
bdb0f2ae6b
Merge pull request #332 from wb9688/learning-playlist
Support YouTube's learning playlists
2020-05-29 10:11:08 +02:00
Tobias Groza
cf18cdb2f5
Merge pull request #329 from wb9688/decryption-regexes
Add more decryption function regexes
2020-05-29 10:10:50 +02:00
wb9688
ab77961b0a Extract trailer thumbnail in YT learning playlists 2020-05-29 09:55:24 +02:00
wb9688
4d683e7655 Support YouTube's learning playlists 2020-05-29 09:17:03 +02:00
Tobias Groza
0b4977bb0c
Merge pull request #333 from wb9688/playerresponse-dashmanifesturl
Extract dashManifestUrl in playerResponse
2020-05-28 21:17:07 +02:00
wb9688
384d6acd5d Add more decryption function regexes 2020-05-28 11:40:38 +02:00
wb9688
8f71bde776 Fix bug for YT videos longer than 1000h 2020-05-28 11:34:42 +02:00
wb9688
036cc7e26e Upgrade jsoup 2020-05-28 11:34:41 +02:00
Fynn Godau
e08256ebc6 Remove "url cleanup" in Bandcamp link handlers 2020-05-25 19:17:27 +02:00
Fynn Godau
692b2d06f4 Bandcamp: read info item data in place and not in advance 2020-05-25 18:53:15 +02:00
wb9688
7ef3e80493 Extract dashManifestUrl in playerResponse 2020-05-15 12:07:26 +02:00
wb9688
efafbbb88a
Merge pull request #331 from wb9688/playlist-subchannel
Add sub-channel stuff to PlaylistInfo
2020-05-12 10:49:13 +02:00
wb9688
baf5dd3e8f
Merge pull request #311 from B0pol/fixSearchSuggestion
Search: add isCorrectedSearch() and fix YoutubeSearchExtractor#getSea…
2020-05-12 09:29:15 +02:00
wb9688
102f04e297 Add sub-channel stuff to PlaylistInfo 2020-05-12 09:14:29 +02:00
Tobias Groza
b40ccb5075
Merge pull request #307 from B0pol/playlists_peertube
[PeerTube] playlist support
2020-05-11 20:53:03 +02:00
adaf196c99 remove unused import 2020-05-11 12:54:33 +02:00
de26e00079 changed all == null || isEmpty() to isNullOrEmpty() 2020-05-11 11:40:24 +02:00
202a73516c refactor: add Utils.isNullOrEmpty() 2020-05-11 11:26:18 +02:00
wb9688
1de0876fb4 Fix #327 2020-05-09 20:06:50 +02:00
1a6e92ebf6 add getSubChannel Name, Url and AvatarUrl for playlists 2020-05-09 09:52:24 +02:00
cf99107745 address yausername change 2020-05-09 00:52:04 +02:00
5bab9d9fc0 [PeerTube] playlist support & refactoring 2020-05-09 00:52:04 +02:00
Tobias Groza
f3913e241e
Merge pull request #324 from Stypox/music-detector-url
[YouTube] Support stream urls in `vnd.youtube://ID` form
2020-05-08 17:43:04 +02:00
wb9688
7320108c66 Rename SubChannel in channels back to ParentChannel 2020-05-08 16:02:59 +02:00
Roy Yosef
a408661771 Fix PR review
Rename "ParentChannel" to "SubChannel"
Add Tests for sub-channel info fetching
2020-05-07 20:20:12 +02:00
Roy Yosef
1de1f97cf1 Add parent channel info to StreamExtractor: name, url & avatar url 2020-05-07 20:20:12 +02:00
Roy Yosef
4234740baa Add parent channel info to ChannelExtractor: name, url & avatar url 2020-05-07 20:20:12 +02:00
6cff5de400 renaming methods for consistency 2020-05-07 15:40:41 +02:00
5760366d70 use JsonObject#isEmpty instead of JsonObject#equals(JsonUtils.EMPTY_OBJECT) 2020-05-07 15:40:41 +02:00
93e868634e clarified javadoc for isCorrectedSearch and getSearchSuggestions in SearchExtractor 2020-05-07 15:40:41 +02:00
3757541a9c adapt new nanojson version 2020-05-07 15:40:41 +02:00
79483a6dc0 «Use this in SearchInfo, for consistency's sake» @Stypox order xD 2020-05-07 15:40:41 +02:00
e8d58e09c9 getSearchSuggestion now returns the corrected query if isCorrectedSearch() is true 2020-05-07 15:40:41 +02:00
5d1c3b3fa2 Use setters in SearchInfo 2020-05-07 15:39:57 +02:00
29b639b454 Search: add isCorrectedSearch() and fix YoutubeSearchExtractor#getSearchSuggestion()
isCorrectedSearch: see the javadoc
getSearchSuggestion: in YoutubeSearchExtractor, it was giving the corrected search query. It now gives the suggested query, as it should
2020-05-07 15:39:57 +02:00
Stypox
a02bfbeae5
[YouTube] Support stream urls in vnd.youtube://ID form 2020-05-07 15:31:31 +02:00
bc13e0c616 Merge remote-tracking branch 'upstream/dev' into soundcloudComments 2020-05-05 14:49:21 +02:00
wb9688
6aae99f832 Fix NPE in defaultAlertsCheck() 2020-05-03 10:28:45 +02:00
wb9688
a1eabc7589 Return null instead of "" in getTextFromObject() 2020-05-02 08:02:25 +02:00
Fynn Godau
e7b046db9d Merge remote-tracking branch 'origin/dev' into dev 2020-04-26 23:12:43 +02:00
Fynn Godau
a3e8e1c70e Bandcamp: move own methods to helper class 2020-04-26 23:05:56 +02:00
Fynn Godau
9bc7a470ab Replace fori with foreach loop 2020-04-26 23:02:14 +02:00
Tobias Groza
49157fcf0d
Merge pull request #317 from wb9688/tnp-nanojson
Use our fork of nanojson
2020-04-24 21:54:35 +02:00
2564bcf399 refactor comments
rename methods in CommentsInfoItemExtractor interface to match the other method names across NewPipeExtractor
remove getName in (Youtube|SoundCloud|Peertube)CommentsExtractor and move it up in CommentsExtractor, return "Comments" instead
2020-04-21 20:05:54 +02:00
Fynn Godau
b5e251c82f Bandcamp channel extractor: package-private access for getImageUrl(…) 2020-04-20 23:12:43 +02:00
Fynn Godau
8c70dab8c5 Bandcamp search query handler factory: inline variable 2020-04-20 23:11:16 +02:00
Fynn Godau
10ae3db118 Bandcamp javadoc: Replace br tags with p tags 2020-04-20 23:03:12 +02:00
Fynn Godau
9201e0d3ea Don't declare exceptions that can't actually be thrown 2020-04-20 22:46:54 +02:00
Fynn Godau
965bce00cf Bandcamp stream extractor: return NO_AGE_LIMIT 2020-04-20 22:44:45 +02:00
Fynn Godau
82099592c7 Bandcamp: Move code from SearchExtractor to InfoItemExtractors 2020-04-20 22:44:35 +02:00
Fynn Godau
00c0333059 Bandcamp: Fetch channelInfo in onFetchPage 2020-04-20 22:41:44 +02:00
Fynn Godau
67de0285e1 Bandcamp: Generate query JSON in a proper way 2020-04-20 22:03:29 +02:00
Fynn Godau
c133190c53 Bandcamp capitalization 2020-04-20 21:55:35 +02:00
Fynn Godau
b100b9873f Bandcmap: Use nanojson fork instead of org.json 2020-04-20 21:53:04 +02:00
wb9688
b51699a20e Implement @TobiGr's suggestions 2020-04-20 14:27:33 +02:00
wb9688
74f0ab1792
Merge pull request #301 from wb9688/media-ccc-non-api-urls
Use media.ccc.de instead of api.media.ccc.de
2020-04-19 17:06:57 +02:00
Fynn Godau
5c0a03328a Merge 'origin/dev' into dev 2020-04-19 14:26:51 +02:00
0cbbc2a1f9 remove unused import 2020-04-19 14:16:38 +02:00
wb9688
979c5a7502 Use our fork of nanojson 2020-04-17 19:36:42 +02:00
d4352f9b84 support comments for SoundCloud 2020-04-10 20:41:41 +02:00
Roy Yosef
2c9f1260eb Fix wb9688 review comments
* Rename PeertubeUserExtractor to PeertubeAccountExtractor
* Add test for video-channels in PeertubeChannelLinkHandlerFactoryTest
* Compatibility support for older versions (use "accounts/" as default)
2020-04-10 16:40:53 +03:00
636c430743 refactor: create extractors and linkHandler packages for SoundCloud, move YoutubeParsingHelper to youtube package (not linkhandler anymore) 2020-04-10 10:51:05 +02:00
Roy Yosef
b6e6f403a8 add support for PeerTube channels extraction 2020-04-09 20:37:49 +03:00
a20d53dd98 remove the mention of Opus on wb9688 advise when
ContentNotSupportedException is thrown
2020-04-08 15:31:11 +02:00
9a7c6b7ab0 use ContentNotSupportedException for channels without tabs 2020-04-07 14:33:43 +02:00
093762e793 throw ContentNotSupportedException when content is know to be unsupported 2020-04-07 14:33:43 +02:00
Tobias Groza
094b87c537
Merge pull request #299 from B0pol/sc_countries
add supported countries for soundcloud
2020-04-03 19:12:33 +02:00
wb9688
bce27a0e22 Rename getValidResponseBody() to getValidJsonResponseBody() 2020-04-03 17:23:18 +02:00
1eb3deb7fd add supported countries for soundcloud 2020-04-02 11:26:19 +02:00
wb9688
8a9e137385 Extract some code to getValidResponseBody() 2020-04-01 16:01:21 +02:00
wb9688
bf24caa5f2 Use media.ccc.de instead of api.media.ccc.de 2020-04-01 13:25:10 +02:00
wb9688
2af610e3e7 Add tests for other YT Music search types 2020-04-01 10:30:51 +02:00
wb9688
c7f7bd2442 Fix error when YT Music videos has no uploader URL 2020-04-01 10:30:51 +02:00
wb9688
ac15df4548 Move YouTube Music search to its own class 2020-04-01 10:30:51 +02:00
wb9688
cf0f2aff3e Extract uploader url from certain YouTube Music videos 2020-04-01 10:30:51 +02:00
wb9688
aa8cea47f3 Refactor YouTube Music search tests 2020-04-01 10:30:51 +02:00
wb9688
dd434cca01 Fix issue when there is no didYouMeanRenderer in itemSectionRenderer 2020-04-01 10:30:51 +02:00
wb9688
5a775a4bbe Use new way of specifying stream count 2020-04-01 10:30:51 +02:00
wb9688
d58c0f230d Improve code for YouTube Music search 2020-04-01 10:30:51 +02:00
wb9688
dc29d87962 Extract YouTube search suggestions 2020-04-01 10:30:51 +02:00
wb9688
c852b13d5a Add Referer header so that it also works with HttpsUrlConnection 2020-04-01 10:30:51 +02:00
wb9688
2b9b2a78e8 Handle 100+ items in playlist 2020-04-01 10:30:51 +02:00
wb9688
fb9b9691b7 Improve getYoutubeMusicKeys() 2020-04-01 10:30:51 +02:00
wb9688
4ddbdf0aee Disable artist search for now 2020-04-01 10:30:51 +02:00
wb9688
1762a527c9 Add support for YouTube Music search 2020-04-01 10:30:51 +02:00
Tobias Groza
69e0624e35
Merge pull request #298 from B0pol/feed_peertube
[peertube] add feed url in channels
2020-03-28 12:53:47 +01:00
bc43f8977d [peertube] add feed url in channels 2020-03-28 10:22:47 +01:00
TobiGr
647e7cd450 Accept YouTube Music playlists but not YouTube Mixes 2020-03-25 22:24:18 +01:00
wb9688
bcd2a1092b Don't accept YouTube Mix playlists 2020-03-25 11:07:28 +01:00
Tobias Groza
e4874d554e
Merge pull request #296 from mauriciocolli/fix-search-errors-detection
Fix search errors detection and refactor search tests
2020-03-24 21:53:32 +01:00
Tobias Groza
8a9ae32e6b
Merge pull request #292 from wb9688/fix-yt-no-views
Fix YouTube videos with no views
2020-03-24 20:27:08 +01:00
Mauricio Colli
c921e5d6a5
Remove unnecessary collector creation function from search extractor 2020-03-23 18:08:51 -03:00
Tobias Groza
6fd9b38ad9
Merge pull request #287 from mauriciocolli/fix-channel-redirect
[YouTube] Fix channel with redirects directly in the response
2020-03-23 18:41:56 +01:00
Mauricio Colli
921bf30bb7
[YouTube] Add check for channel items with no video count in search 2020-03-21 15:55:39 -03:00
Mauricio Colli
b7f8001a49
[YouTube] Add check for channel items without description in search 2020-03-21 15:55:38 -03:00
Mauricio Colli
9b7999fe54
[YouTube] Check if channel item has subscription count in search 2020-03-21 15:55:37 -03:00
Mauricio Colli
d72130edae
Always return a new item collector in the search extractor 2020-03-21 15:55:34 -03:00
Mauricio Colli
0c27198ba1
Include errors from child collectors in the search collector 2020-03-21 15:55:29 -03:00
TobiGr
2cf8cbf0df Merge branch 'master' into dev 2020-03-18 22:29:10 +01:00
wb9688
222d659d9e
[SoundCloud] Don't make separate request for getAudioStreams() in StreamExtractor
Signed-off-by: Stypox <stypox@pm.me>
2020-03-18 11:30:15 +01:00
wb9688
904c9d681f Fix YouTube videos with no views 2020-03-18 10:07:49 +01:00
Stypox
45bb646480
[SoundCloud] Do not overwrite nextPageUrl in PlaylistExtractor
Consistent with YouTube and the documentation
2020-03-17 20:56:47 +01:00
Fynn Godau
a1523eb293 Update Bandcamp service to latest interface changes 2020-03-17 20:40:25 +01:00
Stypox
c505d4e2b7
[SoundCloud] Remove trailing , in playlist page urls 2020-03-17 20:36:59 +01:00
Stypox
ae47c9587c
[SoundCloud] Optimize imports in edited files 2020-03-17 20:32:04 +01:00
Stypox
4389fd3b7b
[SoundCloud] Migrate StreamExtractor to api-v2 2020-03-17 18:06:13 +01:00
Stypox
5e4ddb368f
[SoundCloud] Fix extractors built from next playlist pages
They didn't have the information to calculate another next page url. So now `nextPageUrl` contains a full link with all video ids, and `getPage` takes the first part of the url (containing 15 streams) and produces another `nextPageUrl` with the remaining streams.
Also add a test for this.
2020-03-17 18:04:40 +01:00
fynngodau
b78f788017
Merge branch 'dev' into dev 2020-03-17 18:03:14 +01:00
Stypox
1558da6f6b
[SoundCloud] Fix playlist next page generation 2020-03-17 15:46:35 +01:00
Stypox
d4aa4a0763
[SoundCloud] Fix typo in ChartsExtractor 2020-03-17 15:25:11 +01:00
Stypox
c3d811fde5
[SoundCloud] Use api-v2 in SubscriptionExtractor
Also added
2020-03-17 15:22:25 +01:00
Stypox
d0e66cc600
[SoundCloud] Improve thumbnail url extraction in playlists
Prevent NullPointerExceptions and remove duplicate code
2020-03-17 15:13:28 +01:00
Stypox
f3095713f9
[SoundCloud] Use api-v2 in PlaylistExtractor
Rewrote methods to calculate next page url and to get items from it. `api-v2` is different from `api` since the initial playlist page contains (usually) the full info of the first 3 streams and only the id of the other. Then the single tracks can be requested in batch using `/tracks?ids=id1,id2,...`.
2020-03-17 15:12:13 +01:00
TobiGr
9eca7df947 Forget to fetch the page 2020-03-16 20:50:08 +01:00
TobiGr
edb57840d7 [SoundCloud] Update hard-coded client_id 2020-03-16 19:43:36 +01:00
TobiGr
efad0be99f Test if the extractor can get AudiStreams with the hard-coded cliend_id
SoundCloud client_id are changed on a regular basis now. We might want to remove the hardcoded id completely on a later point of time when client_id is changed to often
2020-03-16 19:42:35 +01:00
TobiGr
5f39bc4e99 [SoundCloud] Update hardcoded client id 2020-03-16 17:26:30 +01:00
Tobias Groza
65a7eda446
Merge pull request #256 from B0pol/mediaccc
Support for non-api mediaccc links, invidious shortened links, refactor mediaccc tests
2020-03-15 17:04:09 +01:00
Tobias Groza
1c954fbded
Merge pull request #277 from XiangRongLin/vnd
Handle youtube stream urls in "vnd.youtube:videoId" format.
2020-03-14 21:52:49 +01:00
Tobias Groza
9edd0f2675
Merge pull request #288 from Stypox/fix-unlisted-video
[YouTube] Fix videos without next stream throwing error and add test for unlisted videos
2020-03-14 21:36:13 +01:00
Stypox
325a51f73a
[YouTube] Do not crash if there is no next stream, but return null
Like every other extractor does if there is no next stream
2020-03-14 14:02:48 +01:00
TobiGr
aea0962cfe [SoundCloud] Update hardcoded client id 2020-03-14 12:41:44 +01:00
Mauricio Colli
b086e9db3f
[YouTube] Fix id extraction for some channels
Some channels had no reliable way to get the redirected id in the response,
so saving it for later was a valid alternative.
2020-03-14 02:39:49 -03:00
Mauricio Colli
00d1ed439b
[YouTube] Fix channel extraction when redirects are in the response
Some redirects were embed directly into the response as instructions
for the page, instead of the usual http redirects.
2020-03-14 02:39:48 -03:00
0cd5e05b7b MediaCCCLH: use substring instead of replace; improve a bit tests, return Collections.emptyList(); instead of null where it's annotated @NonNull 2020-03-13 20:00:49 +01:00