Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - .:WindHack:.

#31


SharkTube es una utilidad o aplicación gratuita que te permite descargar vídeos de YouTube.
CitarNOTA: Esta utilidad se encuentra registrada en SafeCreative bajo la licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0.

Sus características y mejoras son:

       
  • Más servidores de YouTube.
       
  • Disponibilidad de formatos FLV, MP4, entre otros. *
       
  • Ejecutable por línea de comandos y alternativa con Interfaz web.
       
  • Mejor rendimiento en la búsqueda de servidores.
       
  • Extracción de título, descripción y enlace corto.
       
  • Posibilidad de compartir el vídeo en servicios sociales.
Shark.py
Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#   Written by SebastiᮠCastaᯠ(.:WindHack:.)
#             DaW - Labs & Cibernodo
#   - www.daw-labs.com | | www.cibernodo.net  -
#           Version: 1.1 ( Renaissance )
#              Interactive Console
# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

import urllib
import re

bLogo = '''
.--. .-.               .-.   .-----.    .-.
: .--': :               : :.-.`-. .-'    : :
`. `. : `-.  .--.  .--. : `'.'  : :.-..-.: `-.  .--.
_`, :: .. :' .; ; : ..': . `.  : :: :; :' .; :' '_.'
`.__.':_;:_;`.__,_;:_;  :_;:_;  :_;`.__.'`.__.'`.__.'
(C) DaW - Labs & Cibernodo.

Welcome!
NOTE: Enter -e or --end to exit the application.
       '''

Char = ['%3A','%2F','%26','%2C','%3D','%252C','%253A','%7C','%3F']
By =   [':','/','&',',','=',',',':','<begin>','?']


def URLDecode(sURL):
   for i in range(len(Char)):
       sURL = sURL.replace(Char[i],By[i])
   return sURL

def CleanData(sData,IsHTML=True):
   if IsHTML == True:
       rReg = re.compile(r'\&.*?;')
   else:
       rReg = re.compile(r',[0-9].?')
   return rReg.sub('',sData)

def GetSourceCode(sURL):
   try:
       URL = urllib.urlopen(sURL)
       sSource = URL.read()
       URL.close()
       return sSource
   except:
       print '[+] Connection error.'
       exit()

def GetIndexVideo(sSource,Tags):
   return sSource.find(Tags)

def GetVideoInformation(sSource):
   sSource = sSource[2000:4500]
   sInfo = []
   #Title...
   sReg = re.findall(r'<meta property="og:title" content="(.+)">',sSource)
   sInfo.append(sReg[0])
   #Shortlink...
   sReg = re.findall(r'<link rel="shortlink" href="(.+)">',sSource)
   sInfo.append(sReg[0])
   #Description...
   sReg = re.findall(r'<meta property="og:description" content="(.+)">',sSource)
   sInfo.append(CleanData(sReg[0]))
   return sInfo

def GetDownloadURL(sSource,sTitle):
   sSource = sSource[10000:18000]
   Begin = GetIndexVideo(sSource,'width="640" id="movie_player" height="390"    flashvars=')+57
   sSource = sSource[Begin:]
   End = GetIndexVideo(sSource,'allowscriptaccess="always" allowfullscreen="true"')+49
   sSource = sSource[:End].split('<begin>')
   lClean = []
   sTitle = '&title='+sTitle.replace(' ','%20')+'%20[SharkTube]'
   for i in sSource:
       if i.startswith('http://v') and len(i) < 400:
           lClean.append(CleanData(i,IsHTML=False)+sTitle)
   return lClean

def __main__():
   print bLogo
   while 1:
       Id = raw_input('Please, enter the YouTube Id. >> ')
       if Id == '-e' or Id == '--end':
           print 'Thank you for using SharkTube. Goodbye'
           exit(1)
       else:
           if len(Id) == 11:
               try:
                   Source = URLDecode(GetSourceCode('http://www.youtube.com/watch?v='+Id))
                   lInfo = GetVideoInformation(Source)
                   URL = GetDownloadURL(Source,lInfo[0])
                   print '''

           -*- Video Information -*-

Title: %s
Shortlink: %s
Description:
%s

Link(s) available(s) to download:
%s

         ''' % (lInfo[0],lInfo[1],lInfo[2],'\n\n'.join(URL))
               except IndexError:
                   print 'Wrong Id. Please, try again...'
           else:
               print 'The ID must be eleven characters. Try again...'

if __name__ == "__main__":
  __main__()


Captura


Para usar la versión de Interface Web ( Captura superior ) se debe de descargar el proyecto con todo lo necesario del siguiente enlace: http://db.tt/Jtq2sAA

Más información:
- DaW - Labs | SharkTube: ¡Descarga vídeos de YouTube!
- Cibernodo | SharkTube: ¡Descarga vídeos de YouTube!

Eso es todo, espero les sea de ayuda y le puedan sacar provecho.
Por último, agradecimiento especial a 5475UK1 por la ayuda en el diseño y creación del logo.




Saludos.,
#32
Programación General / Re: Pascal , ayuda
24 Marzo 2011, 22:06 PM
No puedes modificar el valor de una variable en un argumento de un/a procedimiento/función y menos la perteneciente al bucle for.

Lo único que se me ocurre para ayudarte un poco (- partiendo que quizá es una tarea -) es decirte que hagas el uso de la condicional If-Then y el operador matemático mod. Mira que los números curiosamente son impares.


Saludos.,
#33
Cita de: 79137913 en 12 Marzo 2011, 03:12 AM
HOLA!!!

Creo que las expresiones que puso se suponia que iban igualadas a 0 osea...

Un número puede alterar todo y no podemos suponer que existe "otro" por ahí. Así que hay que ser concretos y conciso.  ;)
#34
Ahí no hay una ecuación. Las ecuaciones son igualdades entre expresiones algebraicas ( 6x + 6 = 18 )

#35
@BlackZeroX:
- Dime como quieras.


Uhmmm, por lo que veo, sólo valen los comentarios de algunos pocos, los otros si son delito y lo peor, pero bueno, qué se va a hacer. En fin, gracias y suerte.,
#36
Cita de: BlackZeroX▓▓▒▒░░ en 22 Febrero 2011, 04:59 AM
@WindHack

Como la cagas.

Dulces Lunas!¡.

No lo creo, porque simplemente reiteré lo ya dicho por otros usuarios:

Cita de: Novlucker en 19 Febrero 2011, 23:21 PM
Quine :-*

Cita de: seba123neo en 21 Febrero 2011, 23:33 PM
busca ejemplos de Quine en C++ o C# ahi vas a ver la logica de como se hacen, cuando lo veas vos lo haces en 2 lineas  :P

Daba igual haber puesto el código o no ponerlo. A fin de cuentas todos saben usar Google, y la búsqueda no tardaría ni un minuto. Pero en todo caso, esto es VisualBasic, y NUNCA he visto un Quine en ese lenguaje.
#37
Cita de: 79137913 en 21 Febrero 2011, 19:46 PM
HOLA!!!

.:WindHack:. !!! Ojo, los codigos solo se podian entregar despues del 26, eso es una gran ayuda y le quita la gracia, igual ya lo resolvi yo pero para que quites el codigo.
(aunque no sepan python igual lo van a entender).

GRACIAS POR LEER!!!

El código es de Wikipedia, cualquiera que haya leído el mensaje de Novlucker buscará y encontrará ese y muchos códigos más. Además es Python, en VBasic sería MUY diferente.  ;)
#38
No programo en VisualBasic pero el reto en sí está interesante.

Como Novlucker lo dijo, esto es un Quine. Para entender más fácil os dejo un código en Python:

Código (python) [Seleccionar]
a='a=%s;print a%%`a`';print a%`a`

Así que supongo que lo podréis hacer en pocas líneas de código.,
#39
Ingeniería Inversa / Re: Pequeño «Krackme»…
21 Febrero 2011, 19:19 PM
Sí, realmente es muy sencillo... Lo hice para distraerme un rato.  :xD


Por cierto, gran pista lo que dejas PeterPunk77, ¡Jajaja!.,  :rolleyes:
#40
Ingeniería Inversa / Pequeño «Krackme»…
21 Febrero 2011, 03:01 AM
Hola a todos.



Bueno, hoy presento un «Crackme» que he desarrollado en Pascal. Es muy sencillo pero no es como los comunes ya que, para poder superar el reto es necesario realizar una secuencia en el teclado, por lo cual su validación es sólo por esta vía. Tal vez no dure ni diez o veinte minutos vivo, pero el objetivo es entretenerse un rato. Cuando lo resuelvan se darán cuenta que es muy conocido lo que han realizado.,

Clic aquí para descargar.

Nota: Quien lo resuelva, si puede dejar un tutorial de cómo lo hizo estaría muy agradecido.