@@ -40,35 +40,31 @@ class PasteFailed(Exception):
4040
4141
4242class PastePinnwand (object ):
43- def __init__ (self , url , expiry , show_url , removal_url ):
43+ def __init__ (self , url , expiry ):
4444 self .url = url
4545 self .expiry = expiry
46- self .show_url = show_url
47- self .removal_url = removal_url
4846
4947 def paste (self , s ):
5048 """Upload to pastebin via json interface."""
5149
52- url = urljoin (self .url , "/json/new" )
53- payload = {"code" : s , "lexer" : "pycon" , "expiry" : self .expiry }
50+ url = urljoin (self .url , "/api/v1/paste" )
51+ payload = {
52+ "expiry" : self .expiry ,
53+ "files" : [
54+ {"lexer" : "pycon" , "content" : s }
55+ ],
56+ }
5457
5558 try :
56- response = requests .post (url , data = payload , verify = True )
59+ response = requests .post (url , json = payload , verify = True )
5760 response .raise_for_status ()
5861 except requests .exceptions .RequestException as exc :
5962 raise PasteFailed (exc .message )
6063
6164 data = response .json ()
6265
63- paste_url_template = Template (self .show_url )
64- paste_id = urlquote (data ["paste_id" ])
65- paste_url = paste_url_template .safe_substitute (paste_id = paste_id )
66-
67- removal_url_template = Template (self .removal_url )
68- removal_id = urlquote (data ["removal_id" ])
69- removal_url = removal_url_template .safe_substitute (
70- removal_id = removal_id
71- )
66+ paste_url = data ["link" ]
67+ removal_url = data ["removal" ]
7268
7369 return (paste_url , removal_url )
7470
0 commit comments