Fix "No status found with that ID." when fetching from twitter
This commit is contained in:
@@ -13,7 +13,8 @@ module Sources::Strategies
|
||||
end
|
||||
|
||||
def get
|
||||
attrs = TwitterService.new.client.status(url).attrs
|
||||
status_id = status_id_from_url(url)
|
||||
attrs = TwitterService.new.client.status(status_id).attrs
|
||||
@artist_name = attrs[:user][:name]
|
||||
@profile_url = "https://twitter.com/" + attrs[:user][:screen_name]
|
||||
@image_url = attrs[:entities][:media][0][:media_url] + ":orig"
|
||||
@@ -22,5 +23,13 @@ module Sources::Strategies
|
||||
def image_urls
|
||||
TwitterService.new.image_urls(url)
|
||||
end
|
||||
|
||||
def status_id_from_url(url)
|
||||
if url =~ %r{^https?://twitter\.com/[^/]+/status/(\d+)}
|
||||
$1
|
||||
else
|
||||
raise Sources::Error.new("Couldn't get status ID from URL: #{url}")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user