sources: don't escape Unicode characters in tag search URLs.

Fix it so that Unicode characters aren't unnecessarily percent-encoded when generating tag search
URLs. For example, generate URLs like this:

* https://www.pixiv.net/tags/オリジナル/artworks

Not like this:

* https://www.pixiv.net/tags/%E3%82%AA%E3%83%AA%E3%82%B8%E3%83%8A%E3%83%AB/artworks
This commit is contained in:
evazion
2022-12-02 16:04:18 -06:00
parent 9e34f4c3ed
commit c19fc16885
12 changed files with 33 additions and 28 deletions

View File

@@ -8,12 +8,12 @@ module Sources
context "A nicoseiga post url" do
tags = [
["アニメ", "https://seiga.nicovideo.jp/tag/%E3%82%A2%E3%83%8B%E3%83%A1"],
["コジコジ", "https://seiga.nicovideo.jp/tag/%E3%82%B3%E3%82%B8%E3%82%B3%E3%82%B8"],
["さくらももこ", "https://seiga.nicovideo.jp/tag/%E3%81%95%E3%81%8F%E3%82%89%E3%82%82%E3%82%82%E3%81%93"],
["ドット絵", "https://seiga.nicovideo.jp/tag/%E3%83%89%E3%83%83%E3%83%88%E7%B5%B5"],
["ニコニコ大百科", "https://seiga.nicovideo.jp/tag/%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%A4%A7%E7%99%BE%E7%A7%91"],
["お絵カキコ", "https://seiga.nicovideo.jp/tag/%E3%81%8A%E7%B5%B5%E3%82%AB%E3%82%AD%E3%82%B3"],
["アニメ", "https://seiga.nicovideo.jp/tag/アニメ"],
["コジコジ", "https://seiga.nicovideo.jp/tag/コジコジ"],
["さくらももこ", "https://seiga.nicovideo.jp/tag/さくらももこ"],
["ドット絵", "https://seiga.nicovideo.jp/tag/ドット絵"],
["ニコニコ大百科", "https://seiga.nicovideo.jp/tag/ニコニコ大百科"],
["お絵カキコ", "https://seiga.nicovideo.jp/tag/お絵カキコ"],
]
strategy_should_work(
"http://seiga.nicovideo.jp/seiga/im4937663",
@@ -32,12 +32,12 @@ module Sources
context "A nicoseiga image url" do
tags = [
["アニメ", "https://seiga.nicovideo.jp/tag/%E3%82%A2%E3%83%8B%E3%83%A1"],
["コジコジ", "https://seiga.nicovideo.jp/tag/%E3%82%B3%E3%82%B8%E3%82%B3%E3%82%B8"],
["さくらももこ", "https://seiga.nicovideo.jp/tag/%E3%81%95%E3%81%8F%E3%82%89%E3%82%82%E3%82%82%E3%81%93"],
["ドット絵", "https://seiga.nicovideo.jp/tag/%E3%83%89%E3%83%83%E3%83%88%E7%B5%B5"],
["ニコニコ大百科", "https://seiga.nicovideo.jp/tag/%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%A4%A7%E7%99%BE%E7%A7%91"],
["お絵カキコ", "https://seiga.nicovideo.jp/tag/%E3%81%8A%E7%B5%B5%E3%82%AB%E3%82%AD%E3%82%B3"],
["アニメ", "https://seiga.nicovideo.jp/tag/アニメ"],
["コジコジ", "https://seiga.nicovideo.jp/tag/コジコジ"],
["さくらももこ", "https://seiga.nicovideo.jp/tag/さくらももこ"],
["ドット絵", "https://seiga.nicovideo.jp/tag/ドット絵"],
["ニコニコ大百科", "https://seiga.nicovideo.jp/tag/ニコニコ大百科"],
["お絵カキコ", "https://seiga.nicovideo.jp/tag/お絵カキコ"],
]
strategy_should_work(
"http://lohas.nicoseiga.jp/o/910aecf08e542285862954017f8a33a8c32a8aec/1433298801/4937663",
@@ -186,7 +186,7 @@ module Sources
"https://seiga.nicovideo.jp/watch/mg302561",
image_urls: image_urls,
page_url: "https://seiga.nicovideo.jp/watch/mg302561",
tags: [["ロリ", "https://seiga.nicovideo.jp/manga/tag/%E3%83%AD%E3%83%AA"]],
tags: [["ロリ", "https://seiga.nicovideo.jp/manga/tag/ロリ"]],
artist_name: "とろてい",
other_names: ["とろてい"],
tag_name: "nicoseiga_1848060"

View File

@@ -94,10 +94,8 @@ module Sources
should "get the tags" do
pixiv_tags = @site.tags.map(&:first)
pixiv_links = @site.tags.map(&:last)
assert_equal(%w[漫画 test], pixiv_tags)
assert_contains(pixiv_links, /search\.php/)
end
should "get the artist commentary" do