new plugin furaffinity (does not work yet)
This commit is contained in:
		
							
								
								
									
										45
									
								
								plugins/furaffinity.lua
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								plugins/furaffinity.lua
									
									
									
									
									
										Normal 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 | ||||
|   } | ||||
		Reference in New Issue
	
	Block a user