diff options
author | trizen <trizen@protonmail.com> | 2020-11-21 05:00:44 +0200 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2020-12-02 13:10:45 -0500 |
commit | 1e1ff5349fb5c6a72012063709de1807f0a6696d (patch) | |
tree | 721ae582029f7f9e2b076cd28275f79e478209b2 /lib/WWW/FairViewer.pm | |
parent | bdd6cda8011504e1d2dff30e8a3dd45cfeac3021 (diff) | |
download | fair-viewer-1e1ff5349fb5c6a72012063709de1807f0a6696d.tar.lz fair-viewer-1e1ff5349fb5c6a72012063709de1807f0a6696d.tar.xz fair-viewer-1e1ff5349fb5c6a72012063709de1807f0a6696d.zip |
More entries in the list of invidious instances in `_extract_from_invidious()`.
Signed-off-by: Jesús <heckyel@hyperbola.info>
Diffstat (limited to 'lib/WWW/FairViewer.pm')
-rw-r--r-- | lib/WWW/FairViewer.pm | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/lib/WWW/FairViewer.pm b/lib/WWW/FairViewer.pm index 41a5033..04dabf2 100644 --- a/lib/WWW/FairViewer.pm +++ b/lib/WWW/FairViewer.pm @@ -703,15 +703,20 @@ sub _make_feed_url { sub _extract_from_invidious { my ($self, $videoID) = @_; - my @instances = $self->select_good_invidious_instances(); + my @candidates = $self->select_good_invidious_instances(); + my @extra_candidates = $self->select_good_invidious_instances(lax => 1); - if (not @instances) { - @instances = $self->select_good_invidious_instances(lax => 1); - } + require List::Util; + +#<<< + my %seen; + my @instances = grep { !$seen{$_}++ } ( + List::Util::shuffle(map { $_->[0] } @candidates), + List::Util::shuffle(map { $_->[0] } @extra_candidates), + ); +#>>> if (@instances) { - require List::Util; - @instances = List::Util::shuffle(map { $_->[0] } @instances); push @instances, 'invidious.snopyta.org'; } else { |