new plugin furaffinity (does not work yet)

This commit is contained in:
Akamaru 2015-04-26 13:28:06 +02:00
parent 5381f7b182
commit 8b42466881

45
plugins/furaffinity.lua Normal file
View File

@ -0,0 +1,45 @@
local ltn12 = require("ltn12")
local rex = require("rex_pcre")
function run(msg, matches)
local cookies = 'a=' .. get_db_key('global', 'faa') .. '; b=' .. get_db_key('global', 'fab')
local t = {}
body, code, status, headers = http.request {
url = 'http://www.furaffinity.net/full/' .. matches[1],
headers = { Cookie = cookies },
sink = ltn12.sink.table(t)
}
local page = table.concat(t)
print('Loaded ' .. matches[1])
local img = rex.match(page, 'img.+submissionImg.+src="(.+?)"')
local rating = rex.match(page, 'rating".+src="/img/labels/(.+).gif"')
local chan_rating = get_db_key('chan:' .. msg.to.id, 'fa')
if chan_rating == "general" or not chan_rating then
if rating == "explicit" or rating == "mature" then
return nil
end
elseif chan_rating == "mature" then
if rating == "explicit" then
return nil
end
end
local file_path = download_to_file('http:' .. img)
send_photo(get_receiver(msg), file_path, ok_cb, false)
return nil
end
return {
description = "Mirrors FA images",
usage = "furaffinity.net/view/123456",
patterns = {"furaffinity.net/view/([0-9]+)", "furaffinity.net/full/([0-9]+)"},
run = run
}