[nitter] re-add instances

This commit is contained in:
Mike Fährmann
2026-01-21 18:21:21 +01:00
parent 63df6423bf
commit 9ca45aae73
7 changed files with 184 additions and 1 deletions

View File

@@ -1657,9 +1657,33 @@ Consider all listed sites to potentially be NSFW.
<tr id="nitter" title="nitter">
<td colspan="4"><strong>Nitter Instances</strong></td>
</tr>
<tr id="" title="">
<tr id="nitter.net" title="nitter.net">
<td>Nitter.net</td>
<td>https://nitter.net/</td>
<td>Media Files, Replies, Search Results, Tweets</td>
<td></td>
</tr>
<tr id="nitter.space" title="nitter.space">
<td>Nitter.space</td>
<td>https://nitter.space/</td>
<td>Media Files, Replies, Search Results, Tweets</td>
<td></td>
</tr>
<tr id="nitter.tiekoetter" title="nitter.tiekoetter">
<td>Nitter.tiekoetter</td>
<td>https://nitter.tiekoetter/</td>
<td>Media Files, Replies, Search Results, Tweets</td>
<td></td>
</tr>
<tr id="xcancel" title="xcancel">
<td>Xcancel</td>
<td>https://xcancel.com/</td>
<td>Media Files, Replies, Search Results, Tweets</td>
<td></td>
</tr>
<tr id="lightbrd" title="lightbrd">
<td>Lightbrd</td>
<td>https://lightbrd.com/</td>
<td>Media Files, Replies, Search Results, Tweets</td>
<td></td>
</tr>

View File

@@ -229,6 +229,26 @@ class NitterExtractor(BaseExtractor):
BASE_PATTERN = NitterExtractor.update({
"nitter.net": {
"root": "https://nitter.net",
"pattern": r"(?:www\.)?nitter\.net",
},
"nitter.space": {
"root": "https://nitter.space",
"pattern": r"(?:www\.)?nitter\.space",
},
"nitter.tiekoetter": {
"root": "https://nitter.tiekoetter",
"pattern": r"(?:www\.)?nitter\.tiekoetter\.com",
},
"xcancel": {
"root": "https://xcancel.com",
"pattern": r"(?:www\.)?xcancel\.com",
},
"lightbrd": {
"root": "https://lightbrd.com",
"pattern": r"(?:www\.)?lightbrd\.com",
},
})
USER_PATTERN = BASE_PATTERN + r"/(i(?:/user/|d:)(\d+)|[^/?#]+)"

23
test/results/lightbrd.py Normal file
View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
from gallery_dl.extractor import nitter
__tests__ = (
{
"#url" : "https://lightbrd.com/supernaturepics/status/604341487988576256",
"#category": ("nitter", "lightbrd", "tweet"),
"#class" : nitter.NitterTweetExtractor,
},
{
"#url" : "https://lightbrd.com/supernaturepics",
"#category": ("nitter", "lightbrd", "tweets"),
"#class" : nitter.NitterTweetsExtractor,
},
)

47
test/results/nitternet.py Normal file
View File

@@ -0,0 +1,47 @@
# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
from gallery_dl.extractor import nitter
__tests__ = (
{
"#url" : "https://nitter.net/supernaturepics/status/604341487988576256",
"#category": ("nitter", "nitter.net", "tweet"),
"#class" : nitter.NitterTweetExtractor,
"#results" : "https://nitter.net/pic/orig/media%2FCGMNYZvW0AIVoom.jpg",
"comments" : 18,
"content" : "Big Wedeene River, Canada",
"count" : 1,
"date" : "dt:2015-05-29 17:40:00",
"extension": "jpg",
"filename" : "CGMNYZvW0AIVoom",
"likes" : 513,
"num" : 1,
"quoted" : False,
"quotes" : 0,
"retweet" : False,
"retweets" : 455,
"tweet_id" : "604341487988576256",
"url" : "https://nitter.net/pic/orig/media%2FCGMNYZvW0AIVoom.jpg",
"author" : {
"name": "supernaturepics",
"nick": "Nature Pictures",
},
"user" : {
"name": "supernaturepics",
"nick": "Nature Pictures",
},
},
{
"#url" : "https://nitter.net/supernaturepics",
"#category": ("nitter", "nitter.net", "tweets"),
"#class" : nitter.NitterTweetsExtractor,
},
)

View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
from gallery_dl.extractor import nitter
__tests__ = (
{
"#url" : "https://nitter.space/supernaturepics/status/604341487988576256",
"#category": ("nitter", "nitter.space", "tweet"),
"#class" : nitter.NitterTweetExtractor,
},
{
"#url" : "https://nitter.space/supernaturepics",
"#category": ("nitter", "nitter.space", "tweets"),
"#class" : nitter.NitterTweetsExtractor,
},
)

View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
from gallery_dl.extractor import nitter
__tests__ = (
{
"#url" : "https://nitter.tiekoetter.com/supernaturepics/status/604341487988576256",
"#category": ("nitter", "nitter.tiekoetter", "tweet"),
"#class" : nitter.NitterTweetExtractor,
},
{
"#url" : "https://nitter.tiekoetter.com/supernaturepics",
"#category": ("nitter", "nitter.tiekoetter", "tweets"),
"#class" : nitter.NitterTweetsExtractor,
},
)

23
test/results/xcancel.py Normal file
View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
from gallery_dl.extractor import nitter
__tests__ = (
{
"#url" : "https://xcancel.com/supernaturepics/status/604341487988576256",
"#category": ("nitter", "xcancel", "tweet"),
"#class" : nitter.NitterTweetExtractor,
},
{
"#url" : "https://xcancel.com/supernaturepics",
"#category": ("nitter", "xcancel", "tweets"),
"#class" : nitter.NitterTweetsExtractor,
},
)