1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-22 10:42:34 +01:00

[tests] update extractor results

This commit is contained in:
Mike Fährmann 2024-01-20 18:02:36 +01:00
parent acc94ac187
commit 0d367ce1b9
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
38 changed files with 240 additions and 192 deletions

View File

@ -28,7 +28,7 @@ __tests__ = (
"filename" : str,
"fullname" : str,
"height" : int,
"lasthit" : 1705273977,
"lasthit" : range(1705000000, 1900000000),
"md5" : r"re:[0-9a-f]{32}",
"name" : r"re:\d+\.\w+",
"num" : int,

View File

@ -10,22 +10,22 @@ _500px = getattr(gallery_dl.extractor, "500px")
__tests__ = (
{
"#url" : "https://500px.com/p/light_expression_photography",
"#url" : "https://500px.com/p/fashvamp",
"#category": ("", "500px", "user"),
"#class" : _500px._500pxUserExtractor,
"#pattern" : r"https?://drscdn.500px.org/photo/\d+/m%3D4096/v2",
"#pattern" : r"https?://drscdn.500px.org/photo/\d+/m%3D4096(_k%3D1)?/v2\?sig=",
"#range" : "1-99",
"#count" : 99,
},
{
"#url" : "https://500px.com/light_expression_photography",
"#url" : "https://500px.com/fashvamp",
"#category": ("", "500px", "user"),
"#class" : _500px._500pxUserExtractor,
},
{
"#url" : "https://web.500px.com/light_expression_photography",
"#url" : "https://web.500px.com/fashvamp",
"#category": ("", "500px", "user"),
"#class" : _500px._500pxUserExtractor,
},
@ -34,8 +34,8 @@ __tests__ = (
"#url" : "https://500px.com/p/fashvamp/galleries/lera",
"#category": ("", "500px", "gallery"),
"#class" : _500px._500pxGalleryExtractor,
"#pattern" : r"https?://drscdn.500px.org/photo/\d+/m%3D4096_k%3D1/v2\?sig=",
"#count" : 3,
"#sha1_url": "002dc81dee5b4a655f0e31ad8349e8903b296df6",
"gallery": dict,
"user" : dict,
@ -57,8 +57,8 @@ __tests__ = (
"#url" : "https://500px.com/photo/222049255/queen-of-coasts",
"#category": ("", "500px", "image"),
"#class" : _500px._500pxImageExtractor,
"#pattern" : r"https://drscdn\.500px\.org/photo/222049255/m%3D4096_k%3D1/v2\?sig=\w+",
"#count" : 1,
"#sha1_url": "fbdf7df39325cae02f5688e9f92935b0e7113315",
"camera" : "Canon EOS 600D",
"camera_info" : dict,

View File

@ -6,6 +6,7 @@
gallery_dl = __import__("gallery_dl.extractor.8muses")
_8muses = getattr(gallery_dl.extractor, "8muses")
from gallery_dl import exception
__tests__ = (
@ -65,9 +66,7 @@ __tests__ = (
"#comment" : "non-ASCII characters",
"#category": ("", "8muses", "album"),
"#class" : _8muses._8musesAlbumExtractor,
"#count" : 2,
"name": r"re:From Trainers to Pokémons",
"#exception": exception.HttpError,
},
)

View File

@ -107,7 +107,7 @@ __tests__ = (
"#category": ("", "artstation", "image"),
"#class" : artstation.ArtstationImageExtractor,
"#pattern" : r"https?://\w+\.artstation\.com/p/assets/images/images/008/760/279/4k/.+",
"#sha1_content": "7b113871465fdc09d127adfdc2767d51cf45a7e9",
"#sha1_content": "3f211ce0d6ecdb502db2cdf7bbeceb11d8421170",
},
{
@ -124,7 +124,7 @@ __tests__ = (
"#category": ("", "artstation", "image"),
"#class" : artstation.ArtstationImageExtractor,
"#options" : {"external": True},
"#pattern" : "ytdl:https://www.youtube.com/embed/JNFfJtwwrU0",
"#pattern" : r"ytdl:https://www\.youtube(-nocookie)?\.com/embed/JNFfJtwwrU0",
"#range" : "2",
},
@ -154,7 +154,7 @@ __tests__ = (
"#category": ("", "artstation", "following"),
"#class" : artstation.ArtstationFollowingExtractor,
"#pattern" : artstation.ArtstationUserExtractor.pattern,
"#count" : ">= 50",
"#count" : ">= 40",
},
)

View File

@ -262,7 +262,7 @@ __tests__ = (
"allows_comments" : True,
"author" : {
"type" : "regular",
"usericon": "https://a.deviantart.net/avatars/g/d/gdldev.jpg?2",
"usericon": "https://a.deviantart.net/avatars/g/d/gdldev.jpg?12",
"userid" : "1A12BA26-33C2-AA0A-7678-0B6DFBA7AC8E",
"username": "gdldev"
},
@ -530,7 +530,7 @@ __tests__ = (
"#category": ("", "deviantart", "status"),
"#class" : deviantart.DeviantartStatusExtractor,
"#count" : 4,
"#sha1_url": "bf4c44c0c60ff2648a880f4c3723464ad3e7d074",
"#sha1_url": "62ee48ff3405c7714dca70abf42e8e39731012fc",
},
{
@ -538,7 +538,7 @@ __tests__ = (
"#category": ("", "deviantart", "status"),
"#class" : deviantart.DeviantartStatusExtractor,
"#options" : {"journals": "none"},
"#pattern" : r"https://images-wixmp-\w+\.wixmp\.com/f/[^/]+/[^.]+\.jpg\?token=",
"#pattern" : r"https://images-wixmp-\w+\.wixmp\.com/intermediary/f/[^/]+/[^.]+\.jpg",
"#count" : 1,
},
@ -580,7 +580,7 @@ __tests__ = (
"#category": ("", "deviantart", "status"),
"#class" : deviantart.DeviantartStatusExtractor,
"#options" : {"journals": "text"},
"#sha1_url": "c8744f7f733a3029116607b826321233c5ca452d",
"#sha1_url": "10a336bdee7b9692919461443a7dde44d495818c",
},
{
@ -766,7 +766,7 @@ __tests__ = (
"#url" : "https://www.deviantart.com/view/706871727",
"#category": ("", "deviantart", "deviation"),
"#class" : deviantart.DeviantartDeviationExtractor,
"#sha1_content": "3f62ae0c2fca2294ac28e41888ea06bb37c22c65",
"#sha1_content": "87dff6056fc9a2bf77f75317a1e00e18451b3c80",
},
{

View File

@ -9,11 +9,10 @@ from gallery_dl.extractor import lynxchan
__tests__ = (
{
"#url" : "https://endchan.org/yuri/res/193483.html",
"#url" : "https://endchan.org/yuri/res/33621.html",
"#category": ("lynxchan", "endchan", "thread"),
"#class" : lynxchan.LynxchanThreadExtractor,
"#pattern" : r"https://endchan\.org/\.media/[^.]+(\.\w+)?$",
"#count" : ">= 19",
"#urls" : "https://endchan.org/.media/358c089df4be990e9f7b636e1ce83d3e-imagejpeg.jpg",
},
{
@ -27,7 +26,7 @@ __tests__ = (
"#category": ("lynxchan", "endchan", "board"),
"#class" : lynxchan.LynxchanBoardExtractor,
"#pattern" : lynxchan.LynxchanThreadExtractor.pattern,
"#count" : ">= 9",
"#count" : ">= 8",
},
{

View File

@ -108,6 +108,7 @@ __tests__ = (
"#category": ("", "exhentai", "search"),
"#class" : exhentai.ExhentaiSearchExtractor,
"#pattern" : exhentai.ExhentaiGalleryExtractor.pattern,
"#auth" : True,
"#range" : "1-30",
"#count" : 30,
@ -119,8 +120,8 @@ __tests__ = (
"#url" : "https://e-hentai.org/favorites.php",
"#category": ("", "exhentai", "favorite"),
"#class" : exhentai.ExhentaiFavoriteExtractor,
"#pattern" : r"https?://e-hentai\.org/g/1200119/d55c44d3d0",
"#count" : 1,
"#auth" : True,
"#urls" : "https://e-hentai.org/g/1200119/d55c44d3d0",
},
{

View File

@ -69,9 +69,9 @@ __tests__ = (
"#category": ("", "fanbox", "post"),
"#class" : fanbox.FanboxPostExtractor,
"#options" : {"embeds": True},
"#count" : 10,
"#count" : 8,
"title" : "イラスト+SS義足の炭鉱少年が義足を見せてくれるだけ 【全体公開版】",
"title" : "イラスト+SS【全体公開版】義足の探鉱夫男子が義足を見せてくれるだけ ",
"tags" : list,
"articleBody" : dict,
"hasAdultContent": True,

View File

@ -17,7 +17,7 @@ __tests__ = (
"fanclub_user_id": 52152,
"tags" : list,
"title" : str,
"post_title" : str,
},
{
@ -26,7 +26,7 @@ __tests__ = (
"#class" : fantia.FantiaPostExtractor,
"#pattern" : r"https://(c\.fantia\.jp/uploads/post/file/1166373/|cc\.fantia\.jp/uploads/post_content_photo/file/732549[01]|fantia\.jp/posts/1166373/album_image\?)",
"blogpost_text" : r"re:^$|This is a test.\n\nThis is a test.\n\n|Link to video:\nhttps://www.youtube.com/watch\?v=5SSdvNcAagI\n\nhtml img from another site:\n\n\n\n\n\n",
"blogpost_text" : r"re:^$|This is a test.\n\n(This is a test.)?\n\n|Link to video:\nhttps://www.youtube.com/watch\?v=5SSdvNcAagI\n\nhtml img from another site:\n\n\n\n\n\n",
"comment" : "\n\n",
"content_category": r"re:thumb|blog|photo_gallery",
"content_comment" : str,
@ -56,7 +56,7 @@ __tests__ = (
"#url" : "https://fantia.jp/posts/508363",
"#category": ("", "fantia", "post"),
"#class" : fantia.FantiaPostExtractor,
"#count" : 0,
"#count" : 6,
"post_title": "zunda逆バニーでおしりコッショリ",
"tags" : list,

View File

@ -29,11 +29,11 @@ __tests__ = (
},
{
"#url" : "https://www.fashionnova.com/products/essential-slide-red",
"#url" : "https://www.fashionnova.com/products/all-my-life-legging-black",
"#category": ("shopify", "fashionnova", "product"),
"#class" : shopify.ShopifyProductExtractor,
"#pattern" : r"https?://cdn\d*\.shopify.com/",
"#count" : 3,
"#pattern" : r"https?://cdn\d*\.shopify\.com/s/files/",
"#count" : 8,
},
{

View File

@ -75,12 +75,12 @@ __tests__ = (
"id" : 694215,
"md5" : "509eccbba54a43cea6b275a65b93c51d",
"rating" : "g",
"tags" : "lyumos the_witcher shani_(the_witcher) 1girl cosplay green_eyes non-asian redhead waistcoat wreath 3:2_aspect_ratio",
"tags" : "lyumos the_witcher shani_(the_witcher) 1girl green_eyes non-asian redhead waistcoat wreath cosplay 3:2_aspect_ratio",
"tags_character": "shani_(the_witcher)",
"tags_copyright": "the_witcher",
"tags_general" : "1girl cosplay green_eyes non-asian redhead waistcoat wreath",
"tags_general" : "1girl green_eyes non-asian redhead waistcoat wreath",
"tags_idol" : "lyumos",
"tags_medium" : "3:2_aspect_ratio",
"tags_medium" : "cosplay 3:2_aspect_ratio",
"vote_average" : range(4, 5),
"vote_count" : range(25, 40),
"width" : 1024,

View File

@ -46,25 +46,30 @@ __tests__ = (
},
{
"#url" : "https://www.imagefap.com/gallery/6180555",
"#url" : "https://www.imagefap.com/gallery/6706356",
"#comment" : "description (#3905)",
"#category": ("", "imagefap", "gallery"),
"#class" : imagefap.ImagefapGalleryExtractor,
"#range" : "1",
"categories" : [
"Amateur",
"Softcore",
"Homemade",
"Lesbian",
"Fetish",
"Animated GIFS",
],
"count" : 36,
"description": "Nude and dressed sluts showing off the goods",
"gallery_id" : 6180555,
"image_id" : int,
"num" : int,
"tags" : [],
"title" : "Dressed or Undressed MG*",
"uploader" : "splitopen",
"count" : 75,
"description": "A mixed collection of pics and gifs depicting lesbian femdom.\n\nAll images originally found on various Tumblr blogs and through the internet.\n\nObviously I don't own any of the images so if you do and you would like them removed please just let me know and I shall remove them straight away.",
"gallery_id" : 6706356,
"tags" : [
"lesbian",
"femdom",
"lesbian femdom",
"lezdom",
"dominant women",
"submissive women",
],
"title" : "Lezdom, Lesbian Femdom, Lesbian Domination - 3",
"uploader" : "pussysimon",
},
{

View File

@ -232,7 +232,7 @@ __tests__ = (
"#comment" : "large album",
"#category": ("", "imgur", "album"),
"#class" : imgur.ImgurAlbumExtractor,
"#sha1_url": "de748c181a04d18bef1de9d4f4866ef0a06d632b",
"#exception": exception.HttpError,
},
{
@ -255,7 +255,7 @@ __tests__ = (
"#comment" : "empty, no 'media' (#2557)",
"#category": ("", "imgur", "album"),
"#class" : imgur.ImgurAlbumExtractor,
"#count" : 0,
"#exception": exception.HttpError,
},
{
@ -291,7 +291,7 @@ __tests__ = (
"#url" : "https://imgur.com/gallery/eD9CT",
"#category": ("", "imgur", "gallery"),
"#class" : imgur.ImgurGalleryExtractor,
"#pattern" : "https://imgur.com/a/eD9CT",
"#exception": exception.HttpError,
},
{

View File

@ -55,12 +55,12 @@ __tests__ = (
"tags_character" : ["hatsune_miku"],
"tags_copyright" : ["vocaloid"],
"tags_general": [
"female",
"green_eyes",
"twintails",
"green_hair",
"gloves",
"flag",
"gloves",
"green_eyes",
"female",
"racing_miku",
],
"title" : "Racing Miku 2022 Ver.",

View File

@ -60,7 +60,7 @@ __tests__ = (
"added" : "2020-05-06T20:28:02.302000",
"content" : str,
"count" : 1,
"date" : "dt:2019-08-11 02:09:04",
"date" : "dt:2019-08-10 17:09:04",
"edited" : None,
"embed" : dict,
"extension" : "jpeg",
@ -68,7 +68,7 @@ __tests__ = (
"hash" : "210f35388e28bbcf756db18dd516e2d82ce758e0d32881eeee76d43e1716d382",
"id" : "506575",
"num" : 1,
"published" : "2019-08-11T02:09:04",
"published" : "2019-08-10T17:09:04",
"service" : "fanbox",
"shared_file": False,
"subcategory": "fanbox",
@ -295,23 +295,13 @@ __tests__ = (
},
{
"#url" : "https://kemono.party/favorites",
"#url" : "https://kemono.su/favorites",
"#category": ("", "kemonoparty", "favorite"),
"#class" : kemonoparty.KemonopartyFavoriteExtractor,
"#pattern" : kemonoparty.KemonopartyUserExtractor.pattern,
"#auth" : True,
"#count" : 3,
"#sha1_url": "f4b5b796979bcba824af84206578c79101c7f0e1",
},
{
"#url" : "https://kemono.party/favorites?type=post",
"#category": ("", "kemonoparty", "favorite"),
"#class" : kemonoparty.KemonopartyFavoriteExtractor,
"#pattern" : kemonoparty.KemonopartyPostExtractor.pattern,
"#auth" : True,
"#count" : 3,
"#sha1_url": "ecfccf5f0d50b8d14caa7bbdcf071de5c1e5b90f",
"#sha1_url": "902c656c8002a3257ef9e255cb69bca1937373d4",
},
{

View File

@ -49,7 +49,8 @@ __tests__ = (
"#url" : "https://komikcast.me/chapter/soul-land-ii-chapter-300-1-bahasa-indonesia/",
"#category": ("", "komikcast", "chapter"),
"#class" : komikcast.KomikcastChapterExtractor,
"#sha1_url" : "f2674e31b41a7f009f2f292652be2aefb6612d3f",
"#pattern" : r"https://svr\d\.imgkc\.my\.id/wp-content/img/S/Soul_Land_II/300\.1/\d\d\.jpg",
"#count" : 9,
"#sha1_metadata": "cb646cfed3d45105bd645ab38b2e9f7d8c436436",
},

View File

@ -69,7 +69,7 @@ __tests__ = (
"#url" : "https://www.mangaread.org/manga/kanan-sama-wa-akumade-choroi",
"#category": ("", "mangaread", "manga"),
"#class" : mangaread.MangareadMangaExtractor,
"#pattern" : r"https://www\.mangaread\.org/manga/kanan-sama-wa-akumade-choroi/chapter-\d+(-.+)?/",
"#pattern" : r"https://www\.mangaread\.org/manga/kanan-sama-wa-akumade-choroi/chapter-\d+([_-].+)?/",
"#count" : ">= 13",
"manga" : "Kanan-sama wa Akumade Choroi",

View File

@ -82,6 +82,7 @@ __tests__ = (
"#class" : mastodon.MastodonFollowingExtractor,
"#extractor": False,
"#urls" : (
"https://ravenation.club/@soundwarrior20",
"https://mastodon.social/@0x4f",
"https://mastodon.social/@RustyBertrand",
"https://mastodon.social/@christianselig",
@ -105,7 +106,7 @@ __tests__ = (
"header_static" : str,
"id" : r"re:\d+",
"last_status_at": r"re:\d{4}-\d{2}-\d{2}",
"locked" : False,
"locked" : bool,
"note" : str,
"statuses_count": int,
"uri" : str,

View File

@ -15,19 +15,19 @@ __tests__ = (
"#urls" : "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgtpSSdrol9aKP_ztcc_mp9TUUS0U_t2DYJuGX3XCs6X5CkxIb-pM98QlxbkgJFvQj-0e6RbXNBf047qyMDZLcPJsm9dTqAn2XkTVfLhWRaxxVvIYnHYu0R0d7WsAUSFs0MDe4Sotpuqp5DQnjr45T17CXKbWtq9cR3op9dDQh3yiw2a6_HInIjLRm5io/s0/000-micmicidol.jpg",
"blog": {
"date" : "dt:2023-09-18 19:48:53",
"date" : "dt:2023-12-13 08:31:54",
"description": "",
"id" : "7192714164191173242",
"id" : "4995780788834875038",
"kind" : "blogger#blog",
"locale" : {
"country" : "TW",
"language": "zh",
"country" : "",
"language": "en",
"variant" : "",
},
"name" : "MIC MIC IDOL",
"pages" : int,
"posts" : int,
"published" : "2023-09-18T12:48:53-07:00",
"published" : "2023-12-13T16:31:54+08:00",
"updated" : str,
"url" : "http://www.micmicidol.club/"
},
@ -36,17 +36,17 @@ __tests__ = (
"content" : " ",
"date" : "dt:2023-11-18 08:01:00",
"etag" : str,
"id" : "5395888649239375388",
"id" : "2417999400144347191",
"kind" : "blogger#post",
"labels" : [
"- Cover",
"Weekly Taishu",
"Weekly Taishu Cover",
],
"published": "2023-11-18T00:01:00-08:00",
"published": "2023-11-18T16:01:00+08:00",
"replies" : "0",
"title" : "Weekly Taishu 週刊大衆 2023.11.13 Cover",
"updated" : "2023-11-18T03:00:42-08:00",
"updated" : "2023-12-13T16:41:54+08:00",
"url" : "http://www.micmicidol.club/2023/11/weekly-taishu-20231113-cover.html"
},
"num" : 1,
@ -67,6 +67,7 @@ __tests__ = (
"#class" : blogger.BloggerSearchExtractor,
"#range" : "1-25",
"#count" : 25,
"#archive" : False,
"query" : "cover",
},

View File

@ -12,7 +12,7 @@ __tests__ = (
"#url" : "https://myhentaigallery.com/g/16247",
"#category": ("", "myhentaigallery", "gallery"),
"#class" : myhentaigallery.MyhentaigalleryGalleryExtractor,
"#pattern" : r"https://images\.myhentaicomics\.com/mhg/images/[^/]+/original/\d+\.jpg",
"#pattern" : r"https://images\.myhentaicomics\.com/m\w\w/images/[^/]+/original/\d+\.jpg",
"artist" : list,
"count" : 11,

View File

@ -72,13 +72,14 @@ __tests__ = (
"#comment" : "extra files in 'art-image-row' elements - native PNG files (#4642)",
"#category": ("", "newgrounds", "image"),
"#class" : newgrounds.NewgroundsImageExtractor,
"#auth" : True,
"#urls" : (
"https://art.ngfiles.com/images/5009000/5009916_14628_zedrinbot_nazrin-tanlines.265f7b6beec5855a349e2646e90cbc01.png?f1695698131",
"https://art.ngfiles.com/images/5009000/5009916_14632_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695698148",
"https://art.ngfiles.com/images/5009000/5009916_14634_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695698148",
"https://art.ngfiles.com/images/5009000/5009916_14633_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695698148",
"https://art.ngfiles.com/images/5009000/5009916_14635_zedrinbot_nazrin-tanlines.6a7aa4fd63e5f8077ad29314568246cc.png?f1695698149",
"https://art.ngfiles.com/images/5009000/5009916_14636_zedrinbot_nazrin-tanlines.6a7aa4fd63e5f8077ad29314568246cc.png?f1695698149",
"https://art.ngfiles.com/images/5009000/5009916_14632_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695727318",
"https://art.ngfiles.com/images/5009000/5009916_14634_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695727321",
"https://art.ngfiles.com/images/5009000/5009916_14633_zedrinbot_nazrin-tanlines.40bd62fbf5875806cda6b004b348114a.png?f1695727318",
"https://art.ngfiles.com/images/5009000/5009916_14635_zedrinbot_nazrin-tanlines.6a7aa4fd63e5f8077ad29314568246cc.png?f1695727321",
"https://art.ngfiles.com/images/5009000/5009916_14636_zedrinbot_nazrin-tanlines.6a7aa4fd63e5f8077ad29314568246cc.png?f1695727322",
),
},
@ -165,7 +166,7 @@ From The ZJ "Late """,
"#comment" : "flash animation (#1257)",
"#category": ("", "newgrounds", "media"),
"#class" : newgrounds.NewgroundsMediaExtractor,
"#pattern" : r"https://uploads\.ungrounded\.net/161000/161181_ddautta_mask__550x281_\.swf\?f1081628129",
"#urls" : "https://uploads.ungrounded.net/161000/161181_ddautta_mask__550x281_.swf",
"type": "movie",
},
@ -193,8 +194,10 @@ From The ZJ "Late """,
"#comment" : "flash game",
"#category": ("", "newgrounds", "media"),
"#class" : newgrounds.NewgroundsMediaExtractor,
"#pattern" : r"https://uploads\.ungrounded\.net/829000/829032_picovsbeardx\.swf\?f1641968445",
"#range" : "1",
"#urls" : (
"https://uploads.ungrounded.net/829000/829032_picovsbeardx.swf",
"https://uploads.ungrounded.net/tmp/img/521000/iu_521265_5431202.gif",
),
"artist" : [
"dungeonation",
@ -229,7 +232,7 @@ From The ZJ "Late """,
],
"title" : "PICO VS BEAR DX",
"type" : "game",
"url" : "https://uploads.ungrounded.net/829000/829032_picovsbeardx.swf?f1641968445",
"url" : "https://uploads.ungrounded.net/829000/829032_picovsbeardx.swf",
},
{
@ -244,8 +247,8 @@ From The ZJ "Late """,
"#url" : "https://tomfulp.newgrounds.com/audio",
"#category": ("", "newgrounds", "audio"),
"#class" : newgrounds.NewgroundsAudioExtractor,
"#pattern" : r"https://audio.ngfiles.com/\d+/\d+_.+\.mp3",
"#count" : ">= 4",
"#pattern" : r"https://(audio\.ngfiles\.com/\d+/\d+_.+\.mp3|uploads\.ungrounded\.net/.+\.png)",
"#count" : ">= 10",
},
{
@ -261,7 +264,7 @@ From The ZJ "Late """,
"#url" : "https://tomfulp.newgrounds.com/games",
"#category": ("", "newgrounds", "games"),
"#class" : newgrounds.NewgroundsGamesExtractor,
"#pattern" : r"https://uploads.ungrounded.net(/alternate)?/\d+/\d+_.+",
"#pattern" : r"https://uploads.ungrounded.net(/alternate)?/(\d+/\d+_.+|tmp/.+)",
"#range" : "1-10",
"#count" : 10,
},
@ -270,7 +273,7 @@ From The ZJ "Late """,
"#url" : "https://tomfulp.newgrounds.com",
"#category": ("", "newgrounds", "user"),
"#class" : newgrounds.NewgroundsUserExtractor,
"#pattern" : "https://tomfulp.newgrounds.com/art$",
"#urls" : "https://tomfulp.newgrounds.com/art",
},
{
@ -278,8 +281,12 @@ From The ZJ "Late """,
"#category": ("", "newgrounds", "user"),
"#class" : newgrounds.NewgroundsUserExtractor,
"#options" : {"include": "all"},
"#pattern" : "https://tomfulp.newgrounds.com/(art|audio|movies)$",
"#count" : 3,
"#urls" : (
"https://tomfulp.newgrounds.com/art",
"https://tomfulp.newgrounds.com/audio",
"https://tomfulp.newgrounds.com/games",
"https://tomfulp.newgrounds.com/movies",
),
},
{

View File

@ -44,7 +44,7 @@ __tests__ = (
"id" : 2446128,
"md5" : "b0ceda9d860df1d15b60293a7eb465c1",
"search_tags": "Ayane_Suzuki",
"size" : 205312,
"size" : 204800,
"source" : "https://www.pixiv.net/member_illust.php?mode=medium&illust_id=19957280",
"tags" : "Ayane_Suzuki Idolmaster idolmaster_dearly_stars Zanzi",
"uploader" : "XXXname",
@ -65,7 +65,7 @@ __tests__ = (
"height" : 660,
"id" : 481609,
"md5" : "bbdc1c33410c2cdce7556c7990be26b7",
"size" : 157389,
"size" : 157696,
"source" : "",
"tags" : "Ayumu_Kasuga Azumanga_Daioh inanimate Vuvuzela",
"uploader" : "CaptainButtface",
@ -80,7 +80,7 @@ __tests__ = (
"date" : "dt:2010-06-25 13:51:17",
"height" : 800,
"md5" : "b39edfe455a0381110c710d6ed2ef57d",
"size" : 758989,
"size" : 758784,
"source" : "http://www.furaffinity.net/view/4057821/",
"tags" : "inanimate thelost-dragon Vuvuzela",
"uploader": "leacheate_soup",
@ -100,7 +100,7 @@ __tests__ = (
"height" : 2500,
"id" : 3864982,
"md5" : "7629fc0ff77e32637dde5bf4f992b2cb",
"size" : 18454938,
"size" : 18874368,
"source" : "https://twitter.com/VG_Worklog/status/1302407696294055936",
"tags" : "animated Metal_Gear Metal_Gear_Solid_V Quiet Vg_erotica webm",
"uploader" : "justausername",

View File

@ -57,6 +57,7 @@ __tests__ = (
"#comment" : "secret board (#1055)",
"#category": ("", "pinterest", "board"),
"#class" : pinterest.PinterestBoardExtractor,
"#auth" : True,
"#count" : 2,
},

View File

@ -407,47 +407,51 @@ __tests__ = (
},
{
"#url" : "https://www.pixiv.net/novel/show.php?id=19612040",
"#comment" : "full series",
"#url" : "https://www.pixiv.net/novel/show.php?id=12101012",
"#category": ("", "pixiv", "novel"),
"#class" : pixiv.PixivNovelExtractor,
"#count" : 1,
"#sha1_content": "8c818474153cbd2f221ee08766e1d634c821d8b4",
"#sha1_content": "20f4a62f0e87ae2cb9f5a787b6c641bfa4eabf93",
"caption" : r"re:「無能な名無し」と呼ばれ虐げられて育った鈴\(すず\)は、",
"comment_access_control": 0,
"create_date" : "2023-04-02T15:18:58+09:00",
"date" : "dt:2023-04-02 06:18:58",
"id" : 19612040,
"caption" : "<br />第一印象から決めてました!<br /><br />素敵な表紙はいもこは妹さん(<strong><a href=\"pixiv://illusts/53802907\">illust/53802907</a></strong>)からお借りしました。<br /><br />たくさんのコメント、タグありがとうございます、本当に嬉しいです。お返事できていませんが、一つ一つ目を通させていただいてます。タイトルも込みで読んでくださってすごく嬉しいです。ありがとうございます……!!<br /><br />■12/19付けルキラン20位を頂きました…大変混乱していますがすごく嬉しいです。ありがとうございます <br /><br />■2019/12/20デイリー15位、女子に人気8位をを頂きました…て、手が震える…。ありがとうございます…ひえええ。感謝してもしきれないです…",
"create_date" : "2019-12-19T23:14:36+09:00",
"date" : "dt:2019-12-19 14:14:36",
"extension" : "txt",
"id" : 12101012,
"image_urls" : dict,
"is_bookmarked" : False,
"is_muted" : False,
"is_mypixiv_only" : False,
"is_original" : True,
"is_x_restricted" : False,
"novel_ai_type" : 1,
"is_mypixiv_only": False,
"is_original" : False,
"is_x_restricted": False,
"novel_ai_type" : 0,
"page_count" : 1,
"rating" : "General",
"restrict" : 0,
"series" : {
"id" : 10278364,
"title": "龍の贄嫁〜無能な名無しと虐げられていましたが、どうやら異母妹に霊力を搾取されていたようです〜",
"id" : 1479656,
"title": "一目惚れした彼らの話",
},
"tags" : [
"和風ファンタジー",
"溺愛",
"神様",
"ヤンデレ",
"執着",
"異能",
"ざまぁ",
"学園",
"神嫁",
"鬼滅の夢",
"女主人公",
"煉獄杏寿郎",
"涙腺崩壊",
"なにこれすごい",
"来世で幸せになって欲しい",
"キメ学世界線できっと幸せになってる!!",
"あなたが神か!!",
"キメ学編を·····",
"鬼滅の夢小説10000users入り",
],
"text_length" : 5974,
"title" : "異母妹から「無能な名無し」と虐げられていた私、どうやら異母妹に霊力を搾取されていたようです(1)",
"text_length" : 9569,
"title" : "本当は、一目惚れだった",
"total_bookmarks": range(17900, 20000),
"total_comments" : range(200, 400),
"total_view" : range(158000, 300000),
"user" : {
"account": "yukinaga_chifuyu",
"id" : 77055466,
"account": "46_maru",
"id" : 888268,
},
"visible" : True,
"x_restrict" : 0,
@ -463,12 +467,12 @@ __tests__ = (
},
{
"#url" : "https://www.pixiv.net/novel/show.php?id=19612040",
"#url" : "https://www.pixiv.net/novel/show.php?id=12101012",
"#comment" : "full series",
"#category": ("", "pixiv", "novel"),
"#class" : pixiv.PixivNovelExtractor,
"#options" : {"full-series": True},
"#count" : 4,
"#count" : 2,
},
{
@ -488,11 +492,11 @@ __tests__ = (
},
{
"#url" : "https://www.pixiv.net/novel/series/10278364",
"#url" : "https://www.pixiv.net/novel/series/1479656",
"#category": ("", "pixiv", "novel-series"),
"#class" : pixiv.PixivNovelSeriesExtractor,
"#count" : 4,
"#sha1_content": "b06abed001b3f6ccfb1579699e9a238b46d38ea2",
"#count" : 2,
"#sha1_content": "243ce593333bbfe26e255e3372d9c9d8cea22d5b",
},
{

View File

@ -27,6 +27,7 @@ __tests__ = (
"num" : int,
"slug" : "british-beauty-danielle-flashes-hot-breasts-ass-and-snatch-in-the-forest",
"tags" : [
"MILF Outdoor",
"Amateur MILF",
"Nature",
"Amateur Outdoor",

View File

@ -30,15 +30,51 @@ __tests__ = (
},
{
"#url" : "https://realbooru.com/index.php?page=post&s=view&id=668483",
"#url" : "https://realbooru.com/index.php?page=post&s=view&id=862054",
"#comment" : "regular post",
"#category": ("gelbooru_v02", "realbooru", "post"),
"#class" : gelbooru_v02.GelbooruV02PostExtractor,
"#options" : {"tags": True},
"#pattern" : r"https://realbooru\.com//?images/dc/b5/dcb5c0ce9ec0bf74a6930608985f4719\.jpeg",
"#sha1_content": "7f5873ce3b6cd295ea2e81fcb49583098ea9c8da",
"#urls" : "https://realbooru.com/images/8a/34/8a345820da989637c21ac013d522bf69.jpeg",
"#sha1_content": "f6213e6f25c3cb9e3cfefa6d4b3a78e44b9dea5b",
"tags_general": "1girl blonde blonde_hair blue_eyes cute female female_only looking_at_viewer smile solo solo_female teeth",
"tags_model" : "jennifer_lawrence",
"change" : "1705562002",
"created_at" : "Thu Jan 18 01:12:50 -0600 2024",
"creator_id" : "32011",
"date" : "dt:2024-01-18 07:12:50",
"file_url" : "https://realbooru.com/images/8a/34/8a345820da989637c21ac013d522bf69.jpeg",
"filename" : "8a345820da989637c21ac013d522bf69",
"has_children" : "false",
"has_comments" : "false",
"has_notes" : "false",
"height" : "1800",
"id" : "862054",
"md5" : "8a345820da989637c21ac013d522bf69",
"parent_id" : "",
"preview_height": "150",
"preview_url" : "https://realbooru.com/thumbnails/8a/34/thumbnail_8a345820da989637c21ac013d522bf69.jpg",
"preview_width" : "120",
"rating" : "e",
"sample_height" : "1063",
"sample_url" : "https://realbooru.com/samples/8a/34/sample_8a345820da989637c21ac013d522bf69.jpg",
"sample_width" : "850",
"score" : "",
"source" : "https://www.instagram.com/p/CwAO1UyJBnw",
"status" : "active",
"tags" : " 1girl asian bikini black_hair breasts cleavage female female_only floral_print instagram japanese kurita_emi large_breasts looking_at_viewer navel sauna short_hair side-tie_bikini sitting solo ",
"tags_copyright": "instagram",
"tags_general" : "1girl asian bikini black_hair breasts cleavage female female_only floral_print japanese large_breasts looking_at_viewer navel sauna short_hair side-tie_bikini sitting solo",
"tags_model" : "kurita_emi",
"width" : "1440",
},
{
"#url" : "https://realbooru.com/index.php?page=post&s=view&id=568145",
"#comment" : "older post",
"#category": ("gelbooru_v02", "realbooru", "post"),
"#class" : gelbooru_v02.GelbooruV02PostExtractor,
"#urls" : "https://realbooru.com/images/f9/c8/f9c80c00a6add48b1d0abd3bd3ed75af.jpg",
"#sha1_content": "4a7424810f5f846c161b5d3b7c8b0a85a03368c8",
},
)

View File

@ -28,7 +28,7 @@ __tests__ = (
"#url" : "https://rule34.us/index.php?r=posts/view&id=4576310",
"#category": ("booru", "rule34us", "post"),
"#class" : rule34us.Rule34usPostExtractor,
"#pattern" : r"https://video\.rule34\.us/images/a2/94/a294ff8e1f8e0efa041e5dc9d1480011\.mp4",
"#pattern" : r"https://video-cdn\d\.rule34\.us/images/a2/94/a294ff8e1f8e0efa041e5dc9d1480011\.mp4",
"extension" : "mp4",
"file_url" : str,

View File

@ -64,9 +64,6 @@ __tests__ = (
"sport",
"text"
],
"tags_type" : [
"transparent"
],
"thumbnailUrl" : "data/generated-thumbnails/14511_e753313112755da6.jpg",
"type" : "image",
"user" : {

View File

@ -103,7 +103,7 @@ __tests__ = (
"date-max" : "2015-04-25T00:00:00",
"date-min" : "2015-04-01T00:00:00",
},
"#count" : 197,
"#count" : 193,
},
{

View File

@ -44,7 +44,7 @@ __tests__ = (
"tag_ids" : list,
"tags" : list,
"thumbnails_generated": True,
"updated_at" : "2023-07-24T03:18:48.153Z",
"updated_at" : "2023-12-25T06:58:33.986Z",
"upvotes" : int,
"view_url" : "https://cdn.twibooru.org/img/2020/7/8/1/full.png",
"width" : 576,

View File

@ -187,7 +187,7 @@ __tests__ = (
"#url" : "https://twitter.com/i/lists/784214683683127296/members",
"#category": ("", "twitter", "list-members"),
"#class" : twitter.TwitterListMembersExtractor,
"#pattern" : twitter.TwitterTimelineExtractor.pattern,
"#pattern" : twitter.TwitterUserExtractor.pattern,
"#range" : "1-40",
"#count" : 40,
},
@ -463,7 +463,7 @@ Youll be able to receive four Galarian form Pokémon with Hidden Abilities, p
"#category": ("", "twitter", "tweet"),
"#class" : twitter.TwitterTweetExtractor,
"#options" : {"retweets": True},
"#count" : 0,
"#count" : 4,
},
{
@ -509,8 +509,8 @@ Youll be able to receive four Galarian form Pokémon with Hidden Abilities, p
"#category": ("", "twitter", "tweet"),
"#class" : twitter.TwitterTweetExtractor,
"#options" : {"cards": True},
"#pattern" : r"https://pbs.twimg.com/card_img/157\d+/[\w-]+\?format=(jpg|png)&name=orig$",
"#range" : "1-2",
"#pattern" : r"https://pbs.twimg.com/card_img/174\d+/[\w-]+\?format=(jpg|png)&name=orig$",
"#range" : "1,3",
},
{

View File

@ -12,7 +12,7 @@ __tests__ = (
"#url" : "https://unsplash.com/photos/red-wooden-cross-on-gray-concrete-pathway-between-green-trees-during-daytime-kaoHI0iHJPM",
"#category": ("", "unsplash", "image"),
"#class" : unsplash.UnsplashImageExtractor,
"#urls" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3",
"#pattern" : r"https://images\.unsplash\.com/photo-1601823984263-b87b59798b",
"alt_description": "red wooden cross on gray concrete pathway between green trees during daytime",
"blur_hash" : "LIAwhq%e4TRjXAIBMyt89GRj%fj[",
@ -66,25 +66,18 @@ __tests__ = (
"sunrise",
"traditional",
"shrine",
"grey",
"wallpaper",
"grey",
"arbour",
"garden",
"outdoors",
"garden",
"gate",
],
"tags_preview": list,
"topic_submissions": {},
"topics" : [],
"updated_at" : "2023-11-24T08:17:36Z",
"urls": {
"full" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3&q=85",
"raw" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3",
"regular" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3&q=80&w=1080",
"small" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3&q=80&w=400",
"small_s3": "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1601823984263-b87b59798b70",
"thumb" : "https://images.unsplash.com/photo-1601823984263-b87b59798b70?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzAwODY2NDE4fA&ixlib=rb-4.0.3&q=80&w=200",
},
"updated_at" : "2024-01-19T08:21:54Z",
"urls": dict,
"user": {
"accepted_tos" : True,
"bio" : "Professional photographer.\r\nBased in Japan.",
@ -121,7 +114,7 @@ __tests__ = (
"total_photos" : 86,
"total_promoted_photos": 24,
"twitter_username" : None,
"updated_at" : "2023-11-24T19:15:32Z",
"updated_at" : "2023-11-27T07:10:52Z",
"username" : "_______life_"
},
"views": range(2000000, 10000000),

View File

@ -33,7 +33,7 @@ __tests__ = (
"#url" : "https://vsco.co/vsco/collection/1",
"#category": ("", "vsco", "collection"),
"#class" : vsco.VscoCollectionExtractor,
"#pattern" : r"https://image(-aws.+)?\.vsco\.co/[0-9a-f/]+/[\w-]+\.\w+",
"#pattern" : r"https://image(-aws.+)?\.vsco\.co/[0-9a-f/]+/[\w\s-]+\.\w+",
"#range" : "1-80",
"#count" : 80,
},

View File

@ -23,7 +23,7 @@ __tests__ = (
"pid" : int,
"width" : int,
"height" : int,
"shoesize" : "10 US",
"shoesize" : r"re:\d+ US",
"type" : "women",
"tags" : list,
},

View File

@ -12,7 +12,7 @@ __tests__ = (
"#url" : "https://xbooru.com/index.php?page=post&s=list&tags=konoyan",
"#category": ("gelbooru_v02", "xbooru", "tag"),
"#class" : gelbooru_v02.GelbooruV02TagExtractor,
"#count" : 11,
"#count" : 24,
},
{

View File

@ -9,11 +9,11 @@ from gallery_dl.extractor import xhamster
__tests__ = (
{
"#url" : "https://xhamster.com/photos/gallery/11748968",
"#url" : "https://xhamster.com/photos/gallery/take-me-to-the-carwash-at-digitaldesire-15860946",
"#category": ("", "xhamster", "gallery"),
"#class" : xhamster.XhamsterGalleryExtractor,
"#pattern" : r"https://thumb-p\d+.xhcdn.com/./[\w/-]+_1000.jpg$",
"#count" : ">= 144",
"#pattern" : r"https://ic-ph-ah\.xhcdn\.com/a/\w+/webp/000/\d+/\d+/\d+_1000\.jpg$",
"#count" : 19,
"comments": int,
"count" : int,
@ -26,32 +26,40 @@ __tests__ = (
"pageURL" : str,
"thumbURL": str,
"gallery" : {
"date" : "dt:2019-04-16 00:07:31",
"description": "",
"date" : "dt:2022-02-02 06:30:09",
"description": "Alina Henessy loves to wash her car, and we love seeing every inch of her gorgeous body. More at DigitalDesire.com",
"dislikes" : int,
"id" : 11748968,
"id" : 15860946,
"likes" : int,
"tags" : ["NON-Porn"],
"tags" : [
"Babe",
"Public Nudity",
"Take",
"Taking",
"Masturbation",
"Take Me",
],
"thumbnail" : str,
"title" : "Make the world better.",
"views" : int,
"title" : "Take me to the carwash at DigitalDesire",
"views" : range(100000, 200000),
},
"user" : {
"id" : 16874672,
"name" : "Anonymousrants",
"retired" : bool,
"subscribers": int,
"url" : "https://xhamster.com/users/anonymousrants",
"verified" : bool,
"id" : 4741860,
"name" : "DaringSex",
"retired" : False,
"subscribers": range(25000, 50000),
"url" : "https://xhamster.com/users/daringsex",
"verified" : False,
},
},
{
"#url" : "https://jp.xhamster2.com/photos/gallery/11748968",
"#url" : "https://jp.xhamster2.com/photos/gallery/take-me-to-the-carwash-at-digitaldesire-15860946",
"#category": ("", "xhamster", "gallery"),
"#class" : xhamster.XhamsterGalleryExtractor,
"#pattern" : r"https://thumb-p\d+.xhcdn.com/./[\w/-]+_1000.jpg$",
"#count" : ">= 144",
"#pattern" : r"https://ic-ph-ah\.xhcdn\.com/a/\w+/webp/000/\d+/\d+/\d+_1000\.jpg$",
"#count" : 19,
},
{
@ -97,7 +105,7 @@ __tests__ = (
},
{
"#url" : "https://xhamster.com/users/goldenpalomino/photos",
"#url" : "https://xhamster.com/users/daringsex/photos",
"#category": ("", "xhamster", "user"),
"#class" : xhamster.XhamsterUserExtractor,
"#pattern" : xhamster.XhamsterGalleryExtractor.pattern,

View File

@ -31,6 +31,7 @@ __tests__ = (
"#category": ("booru", "zerochan", "image"),
"#class" : zerochan.ZerochanImageExtractor,
"#pattern" : r"https://static\.zerochan\.net/Perth\.%28Kantai\.Collection%29\.full.2920445\.jpg",
"#auth" : True,
"author" : "YeFan 葉凡",
"date" : "dt:2020-04-24 21:33:44",

View File

@ -42,7 +42,9 @@ AUTH = {
"pixiv",
"nijie",
"horne",
"reddit",
"seiga",
"fantia",
"instagram",
"twitter",
}
@ -92,7 +94,8 @@ class TestExtractorResults(unittest.TestCase):
if requires_auth:
extr = result["#class"].from_url(result["#url"])
if not any(extr.config(key) for key in (
"username", "cookies", "api-key", "client-id")):
"username", "cookies", "api-key", "client-id",
"refresh-token")):
msg = "no auth"
self._skipped.append((result["#url"], msg))
self.skipTest(msg)
@ -410,7 +413,7 @@ def generate_tests():
if v in ("f", "fail"):
self.fail("manual test failure")
else:
self._skipped.append((result["#url"], exc))
self._skipped.append((result["#url"], "manual skip"))
self.skipTest(exc)
return test