5n6r

DOWNLOADER COUB's VIDEOS!

Feb 3rd, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.99 KB | None | 0 0
  1. +----------------------------------------------------+
  2. | How to use the program?                            |
  3. | 1) Copy link of the coub                           |    
  4. | 2) Start xCoub-DL                                  |
  5. | 3) Insert the link  (press a right mouse's button) |
  6. | 4) Click the button "Download"                     |
  7. | 5) It's all ;-)                                    |
  8. | 6) For new downloading press the button "New link" |
  9. +----------------------------------------------------+
  10. #(c) 2017, coded 5n6r
  11. #!/usr/bin/env  python3
  12. from tkinter import *
  13. import requests,urllib.request,sys,json,re,os
  14. def mous(event):
  15.     try:
  16.         cb=app.clipboard_get()
  17.         ii.set(cb)
  18.     except:
  19.         cl()
  20. def runner():
  21.     i=ii.get()
  22.     if i!="":
  23.         if len(sys.argv)>1:
  24.             os.environ["http_proxy"]=sys.argv[1]
  25.         opener=urllib.request.build_opener()
  26.         opener.addheaders=[("User-agent","Mozilla/5.0")]
  27.         st=re.findall(r"/\w+$",i)
  28.         url="http://coub.com//api/v2/coubs"+str("".join(st))
  29.         r = requests.get(url)
  30.         s=r.json()
  31.         try:
  32.             htm5=s["file_versions"]["html5"]["video"]["high"]["url"]
  33.             n=s["file_versions"]["html5"]["video"]["high"]["size"]
  34.         except:
  35.             htm5=s["file_versions"]["html5"]["video"]["med"]["url"]
  36.             n=s["file_versions"]["html5"]["video"]["med"]["size"]
  37.         z=s["channel"]["title"]
  38.         x=s["permalink"]
  39.         txt2.set("Name of the video: "+s["title"][:30]+";\n")
  40.         txt2.set(txt2.get()+"Author of the coub'a: "+z+";")
  41.         txt3.set("Size of the file: "+str(n)+" байт; \n")
  42.         client=opener.open(htm5)
  43.         f=open("video_"+str(x)+".mp4","wb")
  44.         f.write(client.read())
  45.         f.close()
  46. def cl()    :
  47.     app.clipboard_clear()
  48.     txt2.set("\n"+"")
  49.     txt3.set("\n"+"")
  50.     txt4.set("\n"+"")
  51.     ii.set("")
  52. app=Tk()
  53. app.title(chr(10029)*3+" xCoub-DL version 0.0.2 beta "+chr(169)+" 2017, coded by 5n6r "+chr(10029)*3)
  54. app.geometry("590x180")
  55. app.resizable(0,0)
  56. fr0=Frame(app,bd=0,height=12)
  57. fr0.pack(padx=10,pady=10)
  58. fr1=Frame(fr0,bd=2,relief="groove")
  59. fr1.grid(row=0, column=0,pady=5,padx=5)
  60. fr2=Frame(fr0,bd=0)
  61. fr2.grid(row=1, column=0,pady=5,padx=5)
  62. fr3=Frame(fr0,bd=2,relief="groove")
  63. fr3.grid(row=2, column=0,pady=5,padx=5)
  64. ii=StringVar()
  65. ii.set("")
  66. txt2=StringVar()
  67. txt2.set("\n"+"")
  68. txt3=StringVar()
  69. txt3.set("\n"+"")
  70. txt4=StringVar()
  71. txt4.set("\n"+"")
  72. l=Label(fr1,text=">>> Link of the video >>>",height=2)
  73. l.grid(row=0,column=0,pady=5,padx=5)
  74. e=Entry(fr1,textvariable=ii,bd=3,cursor="cross",width=40)
  75. e.focus()
  76. e.grid(row=0,column=1,pady=5,padx=5)
  77. l2=Label(fr2,textvariable=txt2)
  78. l2.grid(row=0,column=0,padx=1,pady=1)
  79. l3=Label(fr2,textvariable=txt3)
  80. l3.grid(row=0,column=1,padx=1,pady=1)
  81. l4=Label(fr2,textvariable=txt4)
  82. l4.grid(row=0,column=2,padx=1,pady=1)
  83. b1=Button(fr3,text="Download!",command=runner,cursor="hand2")
  84. b1.grid(row=0,column=0,padx=3,pady=3)
  85. b2=Button(fr3,text="New link",command=cl,cursor="hand2")
  86. b2.grid(row=0,column=1,padx=3,pady=3)
  87. b3=Button(fr3,text="Exit...",command=app.destroy,cursor="hand2")
  88. b3.grid(row=0,column=2,padx=3,pady=3)
  89. e.bind("<Button-3>",mous)
  90. app.mainloop()
Add Comment
Please, Sign In to add comment