|
11461
|
Programación / Scripting / [APORTE] [RUBY] Shack (Imageshack Uploader)
|
en: 19 Marzo 2012, 15:18 pm
|
SHACK An Imageshack commandline uploader.By Elektro H@cker. Todas las tools y scripts que conozco para subir una imagen, como por ejemplo " shag" ya no funcionan por culpa de la developer key, Así que debido a la falta de un uploader para imageshack por línea de comandos he querido hacer este útil script. Espero que os guste y si encontrais fallos o mejoras hagánmelo saber, Gracias. IMPORTANTE: Para usar este script necesitan obtener una developer key (No es un capricho mio), Simplemente rellenen este formulario y enseguida recibiran un email con la clave: http://stream.imageshack.us/api/Luego hay que introducirla (Una única vez) usando el script de tal forma: Y ya podrán disfrutar del libre uso de este script.
Modo de empleo: shack.rb [Opción] [Imagen]
Ejemplo: shack.rb -d C:\Test.jpg
Opciones: -a --all Devuelve el enlace de la imagen en todos los formatos. -b --bb Devuelve el enlace de la imagen en formato BB. -d --directo Devuelve el enlace directo a la imagen. -h --html Devuelve el enlace de la imagen en formato HTML. -t --thumb Devuelve el thumb de la imagen. -k --key Establece su Developer key. /? Muestra esta ayuda.
# -*- coding: UTF-8 -*- # Modulos require 'rest_client' exit if Object.const_defined?(:Ocra) # Metodos def logo() print " @@ @ @ @ @ @@@ @@@ @ @ @ @ @ @ @ @ @ @ @ @@ @ @ @ @ @ @@ @ @@@@ @ @@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@ @ @ @@@@ @@@ @ @ By Elektro H@cker\n\n" end def help() print "\n Modo de empleo:\n\n" print " " + __FILE__.split('/').last + " [Opci\u00F3n] [Imagen]\n\n" print "\n Ejemplo:\n\n" print " " + __FILE__.split('/').last + " -d C:\\Test.jpg \n\n" print "\n Opciones: \n\n" print " -a --all \n Devuelve el enlace de la imagen en todos los formatos. \n\n" print " -b --bb \n Devuelve el enlace de la imagen en formato BB. \n\n" print " -d --directo \n Devuelve el enlace directo a la imagen. \n\n" print " -h --html \n Devuelve el enlace de la imagen en formato HTML. \n\n" print " -t --thumb \n Devuelve el thumb de la imagen. \n\n" print " -k --key \n Establece su Developer key. \n\n" print " /? Muestra esta ayuda. \n\n" Process.exit end def keycode(imput) if ARGV[1] == () or not imput.length.eql? 40 puts "\n Porfavor introduzca una developer key válida..." puts "\n Ejemplo:\n\n " + __FILE__.split('/').last + " --key 148CAPSV9465b858a45dc1b4cdb32dee95ff6f59 \n\n" puts "\n Para más información, Visite: http://stream.imageshack.us/api/" Process.exit end # length if File.exist?("key") oldkey = File.read('key') print "\n ¿Desea reemplazar el archivo que contiene su developer key?\n\n" print " Clave anterior: " + oldkey print "\n Clave nueva : " + imput print "\n\n [SI/NO] \n\n>> " $sino = STDIN.gets if $sino[/si/i] keyfile = File.new("key", "w") keyfile.print(imput) print "\nClave reemplazada correctamente.\n" elsif $sino[/no/i] Process.exit elsif keycode(imput) end # Reemplazar else keyfile = File.new("key", "w") keyfile.print(imput) print "\nClave configurada correctamente.\n" end # File exist end def subir(file) print "\n Subiendo la imagen, Espere...\n\n" $Imagen = RestClient.post('http://www.imageshack.us/upload_api.php', :key => $devkey, # :a_username => "USUARIO", # :a_password => "PASSWORD", :fileupload => File.new(file) ) end def show(opcion) if opcion == "-d" or opcion == "--directo" print $Imagen.split("<image_link>").last.split("</image_link>").first + "\n" elsif opcion == "-b" or opcion == "--bb" print $Imagen.split("<image_bb>").last.split("</image_bb>").first + "\n" elsif opcion == "-h" or opcion == "--html" print $Imagen.split("<image_html>").last.split("</image_html>").first.gsub(">", ">").gsub("<", "<").gsub(""", "'") + "\n" elsif opcion == "-t" or opcion == "--thumb" print $Imagen.split("<thumb_link>").last.split("</thumb_link>").first + "\n" elsif opcion == "-a" or opcion == "--all" print "\nDirecto: \n" + $Imagen.split("<image_link>").last.split("</image_link>").first + "\n\n" print "BB Forum: \n" + $Imagen.split("<image_bb>").last.split("</image_bb>").first + "\n\n" print "HTML: \n" + $Imagen.split("<image_html>").last.split("</image_html>").first.gsub(">", ">").gsub("<", "<").gsub(""", "'") + "\n\n" print "Thumb: \n" + $Imagen.split("<thumb_link>").last.split("</thumb_link>").first + "\n" end Process.exit end # Control de errores logo() if ARGV[0] == "-k" or ARGV[0] == "--key" keycode(ARGV[1]) Process.exit end if not File.exist?("key") print "\n ERROR. Debe configurar su developer key para usar este programa...\n" puts "\n Ejemplo:\n\n " + __FILE__.split('/').last + " --key 148CAPSV9465b858a45dc1b4cdb32dee95ff6f59 \n\n" puts "\n Para más información, Visite: http://stream.imageshack.us/api/" Process.exit elsif $devkey = File.read('key') end if (ARGV.empty?) or ARGV[0] == "/?" help() end if (ARGV[1])==() print "\n ERROR. Debe introducir la ruta local de la imagen...\n" Process.exit end if not File.exist?(ARGV[1]) print "\n ERROR. La imagen no existe...\n" Process.exit elsif not (ARGV[1].split('.').last)[/bmp\z/i] and not (ARGV[1].split('.').last)[/bmp\z/i] and not (ARGV[1].split('.').last)[/gif\z/i] and not (ARGV[1].split('.').last)[/ico\z/i] and not (ARGV[1].split('.').last)[/jpg\z/i] and not (ARGV[1].split('.').last)[/jpeg\z/i] and not (ARGV[1].split('.').last)[/png\z/i] and not (ARGV[1].split('.').last)[/tif\z/i] and not (ARGV[1].split('.').last)[/tiff\z/i] print "\n ERROR. Archivo de imagen no soportado...\n" print "\n Formatos soportados: .BMP, .GIF, .ICO, .JPG, .JPEG, .PNG, .TIF, .TIFF\n" Process.exit end if not ARGV[0] == "-d" and not ARGV[0] == "--directo" and not ARGV[0] == "-a" and not ARGV[0] == "--all" and not ARGV[0] == "-b" and not ARGV[0] == "--bb" and not ARGV[0] == "-h" and not ARGV[0] == "--html" and not ARGV[0] == "-t" and not ARGV[0] == "--thumb" print "\n ERROR. Opcion incorrecta...\n\n" print " Use la opcion [/?] para mostrar la ayuda. \n\n" print " " +__FILE__.split('/').last + " /? \n" Process.exit end # Proceso subir(ARGV[1]) show(ARGV[0])
|
|
|
11462
|
Programación / Scripting / Re: [RUBY] Problema con la API de Imageshack... (Progresos... xD)
|
en: 19 Marzo 2012, 09:58 am
|
Ya he progresado un poco: require 'rest_client' Imagen = RestClient.post('http://www.imageshack.us/upload_api.php', :key => "268BEKSV9465b858a45cd1b4d2b32d1195ee6f27", :a_username => "miuser", :a_password => "mipass", :fileupload => File.new('c:/elektrohackerisawesome.jpg') ) print Imagen
El problema que me surge es... ¿Como hago un "Return" para que me devuelva la url de la imagen? Osea, Como filtro el body? Esta es la parte del "body" que me interesa obtener: <image_link>http://img28.imageshack.us/img28/8056/elektrohackerisawesome.jpg </image_link> EDITO: Solucionado print Imagen.split("<image_link>").last.split("</image_link>").first
|
|
|
11463
|
Sistemas Operativos / Windows / Re: comando ping de tcp/ip utiliza mi cpu
|
en: 18 Marzo 2012, 22:54 pm
|
Vamos a ver... Lo primero que debes hacer es averiguar la procedencia de ese PING.exe, Puede ser un virus, o puede ser el programa ping original de Microsoft. Escribe en consola: wmic process get description, ExecutablePath | Find /i "ping"
Deberías obtener una ruta. Esta es la ruta del archivo original: C:\Windows\system32\PING.EXE Si obtienes la misma ruta entonces OLVIDA que tienes un virus. (Al menos OLVIDA que ping.exe séa un virus). EDITO: Y lo segundo que hay que hacer es revisar las entradas de registro en busca de programas que se inicien en Windows. En consola: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" | Find /i "ping" & reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" | Find /i "ping"
Si te sale algo, Dínoslo y Borra la entrada de registro, Si no te sale nada de nada... Sin lugar a dudas Ping.exe no es virus. pd: Puedes borrar programas que se inician con windows abriendo el "Regedit.exe" y acceder a esta clave: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ Y esta otra: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ Salu2.
|
|
|
11464
|
Programación / Scripting / [APORTE] Python 2.7.2 (64 Bit) Portable Auto-Instalable FULL para Windows
|
en: 18 Marzo 2012, 20:33 pm
|
Python 2.7.2 (64 Bit) Portable Auto-Instalable FULL para Windows by Elektro H@ckerNo hay mucho que decir , Se instala en "C:\Archivos de programa (x86)\Python" y lleva un desinstalador. IMPORTANTE: Ejecutarlo como administrador, Hay 3 dlls de python que se deberán copiar en "...Windows\System32\". Pueden abrir el .exe con WinRar y copiarlas manualmente... - Es la instalación completa, Lleva el paquete de "Test", El IDLE, el TKinter, Los scripts, TODO. - También lleva el "cxfreeze" para compilar scripts. - Los archivos de python están asociados a Python.exe tal como lo hace el instalador oficial. - Para ejecutar un script simplemente darle doble click a el, o en consola: " Script.py", o "Python.exe Script.py"- Para abrir el IDLE simplemente poner en consola "IDLE", O ir a la carpeta de Python y hacer un acceso directo donde querais al archivo "IDLE.bat" de esa misma carpeta. - Además le he agregado un icono personalizado para los archivos de extensión .py .pyc .pyo y .pyw. - Y una opción en el menú contextual para compilar rápidamente un .py o un .pyw: PD: Hay un "Setup.py" de ejemplo en la carpeta de Python. Salu2! EDITO: Tuve un pequeño fallo con el registro de la opción "Compilar", No funcionaba con nombres con espacio. Aqui tienen el FIXCompilar_FIXED.regWindows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Python.File\Shell\Compilar\command] @="CMD /k python.exe \"C:\\Program Files (x86)\\Python\\Scripts\\cxfreeze\" \"%1\" --target-dir \"PYTHON_Compilado\" && echo+ && echo+ && echo+ Script compilado! && ping -n 3 localhost >nul & Exit"
[HKEY_CLASSES_ROOT\Python.NoConFile\Shell\Compilar\command] @="CMD /k python.exe \"C:\\Program Files (x86)\\Python\\Scripts\\cxfreeze\" \"%1\" --target-dir \"PYTHON_Compilado\" && echo+ && echo+ && echo+ Script compilado! && ping -n 3 localhost >nul & Exit"
|
|
|
11465
|
Programación / Scripting / Re: . bat que une varios txt
|
en: 18 Marzo 2012, 20:16 pm
|
El comando sería así: copy /b "1.txt" + "2.txt" + "3.txt" + "4.txt" + "5.txt" + "6.txt" "total.txt"
(No importa con o sin comillas, Mientras los nombres de archivo no contengan espacios en el nombre) Pero no especificas cual es el problema con el resultado que obtienes... Si lo que quieres es añadir un espacio para que no se "pegue" al final de la línea de cada texto, puedes hacer esto: copy /b "1.txt" + tmp + "2.txt" + tmp + "3.txt" + tmp + "4.txt" + tmp + "5.txt" + tmp + "6.txt" "total.txt"
|
|
|
11467
|
Informática / Hardware / Re: Abrir archivos u otros
|
en: 18 Marzo 2012, 18:59 pm
|
Hola Zorronde
Eso me pasaba hace años con otro PC, Era por que tenía poca ram y consumía bastante.
Yo no se casi de Hardware, Pero El "ultimate" trae mucha mierd@ (Servicios y aplicaciones innecesarias que van consumiendo la ram...) y 4 GB se llegan a consumir facilmente si abres bastantes programas y reproduces videos, etc...
Creo que lo que más te puede ayudar, Por orden, es esto:
1º - Añadir 2 GB mínimo más de RAM.
2º - Instalar Win7 x64 Home Premium
3º - Hacer una limpieza manual de los servicios que no necesitas y deshabilitarlos Inicio > ejecutar > services.msc Click derecho en un servicio innecesario > propiedades > detener, deshabilitar)
4º - Configurar las opciones de visualizacion Inicio > ejecutar > sysdm.cpl > Opciones avanzadas > Rendimiento (Configuración) Y te lo ajustas un poco, Quita por ejemplo el efecto de maximizar y minimizar ventanas, Mostrar el contenido de la carpeta al mover, Atenuar los elementos al hacer click...
Bueno, un saludo
|
|
|
11469
|
Programación / Scripting / Re: .bat en el servidor
|
en: 18 Marzo 2012, 16:03 pm
|
copy " %~DP0*.txt" " %~DP0total.txt"
Deberías agregar ese argumento a cada comando. Aunque si son muchos comandos, Lo mejor es que al principio de tu script, pongas esto: PUSHD %~DP0Ejemplo:
PD: PUSHD Especifica el directorio en donde el bat tiene que trabajar. Saludos.
|
|
|
11470
|
Programación / Scripting / Re: Problema con Py2Exe en Windows
|
en: 18 Marzo 2012, 14:54 pm
|
Hola, ha pasado un tiempo desde que tube este problema, Y lo solucioné, Pero ahora no se porqué ya no me funciona el py2exe... He reinstalado python 2.7 (x64) desde cero, he instalado el py2exe x64 la última version oficial Intento compilar este script: print "hola"
Con este setup.py: from distutils.core import setup import py2exe setup(console=["HelloWorld.py"])
(Como veis, debería funcionar...) Pero no me funciona... ¿Alguna ayuda? PD: Tengo instalado Microsoft Visual C++ 2008 Redistributable Package tanto el paquete x64 como el x86... No se de que manera podría utilizar el "dependency walker" (Que .exe debo abrir?) para averiguar que dll se supone que falta... Mi SO es Win7 x64, Por si sirve de ayuda... Y El error es este: creating python loader for extension 'bz2' (C:\Python27\DLLs\bz2.pyd -> bz2.pyd)
*** finding dlls needed *** Traceback (most recent call last): File "setup.py", line 7, in <module> setup(console=["HelloWorld.py"]) File "C:\Python27\lib\distutils\core.py", line 152, in setup dist.run_commands() File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands self.run_command(cmd) File "C:\Python27\lib\distutils\dist.py", line 972, in run_command cmd_obj.run() File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 243, in run self._run() File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 305, in _run dlls = self.find_dlls(extensions) File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 389, in find_dl ls self.dll_excludes) File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 1021, in find_d ependend_dlls import py2exe_util ImportError: DLL load failed: No se puede encontrar el m¾dulo especificado.
|
|
|
|
|
|
|