#1866 update for new deviantart urls
This commit is contained in:
@@ -22,12 +22,16 @@ module Downloads
|
|||||||
end
|
end
|
||||||
|
|
||||||
def rewrite_thumbnails(url, headers)
|
def rewrite_thumbnails(url, headers)
|
||||||
if url =~ %r{^(https?://.+?\.deviantart\.net/.+?/)200H/}
|
if url =~ %r{^(https?://(?:fc|th)\d{2}\.deviantart\.net/.+?/)200H/}
|
||||||
match = $1
|
match = $1
|
||||||
url.sub!(match + "200H/", match)
|
url.sub!(match + "200H/", match)
|
||||||
elsif url =~ %r{^(https?://.+?\.deviantart\.net/.+?/)PRE/}
|
elsif url =~ %r{^(https?://(?:fc|th)\d{2}\.deviantart\.net/.+?/)PRE/}
|
||||||
match = $1
|
match = $1
|
||||||
url.sub!(match + "PRE/", match)
|
url.sub!(match + "PRE/", match)
|
||||||
|
elsif url =~ %r{^https?://(?:pre|img)\d{2}\.deviantart\.net/}
|
||||||
|
source = ::Sources::Strategies::DeviantArt.new(url)
|
||||||
|
source.get
|
||||||
|
return [source.image_url, headers]
|
||||||
end
|
end
|
||||||
|
|
||||||
return [url, headers]
|
return [url, headers]
|
||||||
|
|||||||
@@ -47,10 +47,10 @@ module Sources
|
|||||||
end
|
end
|
||||||
|
|
||||||
def get_image_url_from_page(page)
|
def get_image_url_from_page(page)
|
||||||
image = page.search("div.dev-view-deviation img.dev-content-normal")
|
download_link = page.link_with(:class => /dev-page-download/)
|
||||||
|
|
||||||
if image.any?
|
if download_link
|
||||||
image[0]["src"]
|
download_link.click.uri.to_s # need to follow the redirect now to get the full size url, following it later seems to not work.
|
||||||
else
|
else
|
||||||
nil
|
nil
|
||||||
end
|
end
|
||||||
@@ -58,9 +58,9 @@ module Sources
|
|||||||
|
|
||||||
def normalized_url
|
def normalized_url
|
||||||
@normalized_url ||= begin
|
@normalized_url ||= begin
|
||||||
if url =~ %r{\Ahttps?://(?:fc|th)\d{2}\.deviantart\.net/.+/[a-z0-9_]*_by_[a-z0-9_]+-d([a-z0-9]+)\.}i
|
if url =~ %r{\Ahttps?://(?:fc|th|pre|orig|img)\d{2}\.deviantart\.net/.+/[a-z0-9_]*_by_[a-z0-9_]+-d([a-z0-9]+)\.}i
|
||||||
"http://fav.me/d#{$1}"
|
"http://fav.me/d#{$1}"
|
||||||
elsif url =~ %r{\Ahttps?://(?:fc|th)\d{2}\.deviantart\.net/.+/[a-f0-9]+-d([a-z0-9]+)\.}i
|
elsif url =~ %r{\Ahttps?://(?:fc|th|pre|orig|img)\d{2}\.deviantart\.net/.+/[a-f0-9]+-d([a-z0-9]+)\.}i
|
||||||
"http://fav.me/d#{$1}"
|
"http://fav.me/d#{$1}"
|
||||||
elsif url =~ %r{deviantart\.com/art/}
|
elsif url =~ %r{deviantart\.com/art/}
|
||||||
url
|
url
|
||||||
|
|||||||
@@ -324,10 +324,10 @@ class Post < ActiveRecord::Base
|
|||||||
base_36_id = base_10_id.to_s(36)
|
base_36_id = base_10_id.to_s(36)
|
||||||
"http://twitpic.com/#{base_36_id}"
|
"http://twitpic.com/#{base_36_id}"
|
||||||
|
|
||||||
when %r{\Ahttps?://(?:fc|th)\d{2}\.deviantart\.net/.+/[a-z0-9_]*_by_([a-z0-9_]+)-d([a-z0-9]+)\.}i
|
when %r{\Ahttps?://(?:fc|th|pre|orig|img)\d{2}\.deviantart\.net/.+/[a-z0-9_]*_by_([a-z0-9_]+)-d([a-z0-9]+)\.}i
|
||||||
"http://#{$1}.deviantart.com/gallery/#/d#{$2}"
|
"http://#{$1}.deviantart.com/gallery/#/d#{$2}"
|
||||||
|
|
||||||
when %r{\Ahttps?://(?:fc|th)\d{2}\.deviantart\.net/.+/[a-f0-9]+-d([a-z0-9]+)\.}i
|
when %r{\Ahttps?://(?:fc|th|pre|orig|img)\d{2}\.deviantart\.net/.+/[a-f0-9]+-d([a-z0-9]+)\.}i
|
||||||
"http://deviantart.com/gallery/#/d#{$1}"
|
"http://deviantart.com/gallery/#/d#{$1}"
|
||||||
|
|
||||||
when %r{\Ahttp://www\.karabako\.net/images(?:ub)?/karabako_(\d+)(?:_\d+)?\.}i
|
when %r{\Ahttp://www\.karabako\.net/images(?:ub)?/karabako_(\d+)(?:_\d+)?\.}i
|
||||||
|
|||||||
Reference in New Issue
Block a user