From 04226d3409a665fda987d2b496e7f5c48bfd0c63 Mon Sep 17 00:00:00 2001 From: evazion Date: Mon, 14 Mar 2022 16:02:55 -0500 Subject: [PATCH] pixiv: normalize pixiv urls in artist entries. Normalize Pixiv URLs to `https://www.pixiv.net/users/1234` format. --- script/fixes/105_normalize_pixiv_artist_urls.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 script/fixes/105_normalize_pixiv_artist_urls.rb diff --git a/script/fixes/105_normalize_pixiv_artist_urls.rb b/script/fixes/105_normalize_pixiv_artist_urls.rb new file mode 100755 index 000000000..6dab9f590 --- /dev/null +++ b/script/fixes/105_normalize_pixiv_artist_urls.rb @@ -0,0 +1,15 @@ +#!/usr/bin/env ruby + +require_relative "base" + +CurrentUser.scoped(User.system, "127.0.0.1") do + Artist.joins(:urls).where_regex("artist_urls.url", '^https?://www.pixiv.net/member\.php\?id=[0-9]+$').find_each do |artist| + artist.update!(url_string: artist.url_string.gsub(%r{https?://www\.pixiv\.net/member\.php\?id=([0-9]+)$}, 'https://www.pixiv.net/users/\1')) + puts artist.id + end + + Artist.joins(:urls).where_regex("artist_urls.url", '^https?://www.pixiv.net/en/users/[0-9]+$').find_each do |artist| + artist.update!(url_string: artist.url_string.gsub(%r{https?://www\.pixiv\.net/en/users/([0-9]+)$}, 'https://www.pixiv.net/users/\1')) + puts artist.id + end +end