weibo: normalize weibo urls in artist entries.
Normalize all Weibo URLs in artist entries to one of these forms: * https://www.weibo.com/u/5399876326 * https://www.weibo.com/p/1005055399876326 * https://www.weibo.com/chengziyou666
This commit is contained in:
23
script/fixes/104_normalize_weibo_artist_urls.rb
Executable file
23
script/fixes/104_normalize_weibo_artist_urls.rb
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
require_relative "base"
|
||||
|
||||
with_confirmation do
|
||||
# https://m.weibo.cn/u/7119279079 -> https://m.weibo.com/u/7119279079
|
||||
Artist.rewrite_urls('weibo\.cn', /weibo\.cn/, "weibo.com")
|
||||
|
||||
# https://m.weibo.com/u/7119279079 -> https://www.weibo.com/u/7119279079
|
||||
Artist.rewrite_urls('m\.weibo\.com', /m\.weibo\.com/, "www.weibo.com")
|
||||
|
||||
# https://weibo.com/u/5466604405 -> https://www.weibo.com/u/5466604405
|
||||
Artist.rewrite_urls('https?://weibo\.com', %r{https?://weibo\.com}, "https://www.weibo.com")
|
||||
|
||||
# https://www.weibo.com/5493194708/profile?rightmod=1&wvr=6&mod=personnumber&is_all=1 -> https://www.weibo.com/5493194708/profile
|
||||
Artist.rewrite_urls('weibo\.com.*\?.*', /(.*weibo\.com.*)(\?.*$)/, '\1')
|
||||
|
||||
# https://www.weibo.com/5493194708/profile -> https://www.weibo.com/5493194708
|
||||
Artist.rewrite_urls('weibo.com/[0-9]+/profile', %r{/profile$}, "")
|
||||
|
||||
# https://www.weibo.com/5493194708/home -> https://www.weibo.com/5493194708
|
||||
Artist.rewrite_urls('weibo.com/[0-9]+/home', %r{/home$}, "")
|
||||
end
|
||||
@@ -3,9 +3,11 @@ require_relative "../../config/environment"
|
||||
# Run a block of code in a transaction, and only commit it after confirmation.
|
||||
def with_confirmation(&block)
|
||||
ApplicationRecord.transaction do
|
||||
yield
|
||||
CurrentUser.scoped(User.system, "127.0.0.1") do
|
||||
yield
|
||||
|
||||
print "Commit? (yes/no): "
|
||||
raise "abort" unless STDIN.readline.chomp == "yes"
|
||||
print "Commit? (yes/no): "
|
||||
raise "abort" unless STDIN.readline.chomp == "yes"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user