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 - Manibal_man

#1
Scripting / Parseando XML en Python
23 Abril 2006, 20:57 PM
Buenas gente... el asunto es este... en mi vida use python, y en el trabajo necesito modificar unos scripts en python que parsean data de varios XML, estuve leyendo algo de documentacion y vi que usan Regular Expresions (REGEX), vi que son realmente muy practicas y aprendi a usarlas.. hasta ahi perfecto... el tema es que para cosas mas complejas (y mas flexibles) usan un modulo llamado Feedparser (http://feedparser.org/) que es originalmente creado para parsear info de modulos RSS especificamente... funciona con XML standard pero no encuentro la forma de definir nuevos TAGs, es decir, TAGs que no se usen en modulos RSS...

Entonces, basicamente necesitaria que alguien me explicara como definir un tag desconocido en el modulo Feedparser, o bien alguna otra forma simple de parsear XMLs o mas compleja pero muy bien explicada porque como dije al principio soy muy nuevo en python y estoy muy pero muy acostumbrado a C y al paradigma de programacion estructurada.

Muchisimas gracias por adelantado, espero que alguien pueda darme una mano.

Saludos
#2
Cita de: bautistasbr en 25 Marzo 2006, 21:20 PM
Busco algun emule con las sources funcionales al 100%

o algun manual para hacerlo.

Por lo que decis estas seguro que el problema son los sources... Es asi? estas seguro que no es algun tema con el compilador? o algun problema con el linkeo de librerias? tenes todas las librerias que requiere? definitivamente no se apega al ANSI C por lo que debe usar varias librerias adicionales...

Pero no entiendo... si no tenes los conocimientos para deducir cual es el problema... para que queres compilarlo?? porque no usas los binarios y ya? (solo por curiosidad)

Saludos
#3
Fijate de donde lo sacaste... ahi mismo dice para que es...

Saludos
#4
CitarHola, tengo una duda queria saber si utilizando pipes para interactuar con la shell de windows recibiriamos todas las respuesta, por ejemplo si enviamos un comando y la respuesta es " desea borrar ... ? s/n " recibiriamos la repuesta y podriamos contestar??

ahas, se puede...
aca va un code que postearon alguna vez en hackxcrack:

'Crear Tunel
      Public Declare Function CreatePipe Lib "kernel32" ( _
          phReadPipe As Long, _
          phWritePipe As Long, _
          lpPipeAttributes As Any, _
          ByVal nSize As Long) As Long
     
      'Leer Tunel
      Public Declare Function ReadFile Lib "kernel32" ( _
          ByVal hFile As Long, _
          ByVal lpBuffer As String, _
          ByVal nNumberOfBytesToRead As Long, _
          lpNumberOfBytesRead As Long, _
          ByVal lpOverlapped As Any) As Long
     
      'Esto lo usa la funcion CreateProcessA
      Public Type SECURITY_ATTRIBUTES
          nLength As Long
          lpSecurityDescriptor As Long
          bInheritHandle As Long
      End Type
     
      'Esto lo usa la funcion CreateProcessA
      Public Type STARTUPINFO

          cb As Long
          lpReserved As Long
          lpDesktop As Long
          lpTitle As Long
          dwX As Long
          dwY As Long
          dwXSize As Long
          dwYSize As Long
          dwXCountChars As Long
          dwYCountChars As Long
          dwFillAttribute As Long
          dwFlags As Long
          wShowWindow As Integer
          cbReserved2 As Integer
          lpReserved2 As Long
          hStdInput As Long
          hStdOutput As Long
          hStdError As Long
      End Type
     
      'Esto lo usa la funcion CreateProcessA
      Public Type PROCESS_INFORMATION
          hProcess As Long
          hThread As Long
          dwProcessId As Long
          dwThreadID As Long
      End Type
     
      'Esta funcion lanza el proceso y
      'devuelve sus datos a traves de PROCESS_INFORMATION
      Public Declare Function CreateProcessA Lib "kernel32" ( _
          ByVal lpApplicationName As Long, _
          ByVal lpCommandLine As String, _
          lpProcessAttributes As SECURITY_ATTRIBUTES, _
          lpThreadAttributes As SECURITY_ATTRIBUTES, _
          ByVal bInheritHandles As Long, _
          ByVal dwCreationFlags As Long, _
          ByVal lpEnvironment As Long, _
          ByVal lpCurrentDirectory As Long, _
          lpStartupInfo As STARTUPINFO, _
          lpProcessInformation As PROCESS_INFORMATION) As Long
     
      'Cierra el tunel
      Public Declare Function CloseHandle Lib "kernel32" ( _
          ByVal hHandle As Long) As Long
     
      'Constantes necesarias para lo de antes
      Public Const NORMAL_PRIORITY_CLASS = &H20&
      Public Const STARTF_USESTDHANDLES = &H100&
      Public Const STARTF_USESHOWWINDOW = &H1
     
     

Public Function Cmdd(ByVal Comando As String) As String
      On Error GoTo ACAGAR
          Dim proc As PROCESS_INFORMATION     'Informacion de CreateProcessA
          Dim ret As Long                     'Esto se usa para obtener el retorno de las
                                              'funciones API
          Dim start As STARTUPINFO            'Informacion de inicio para CreateProcessA
     
          Dim sa As SECURITY_ATTRIBUTES       'Atributos de seguridad para
                                              'CreateProcessA
          Dim hReadPipe As Long               'Lectura de Tunel
          Dim hWritePipe As Long              'Escritura de Tunel
          Dim lngBytesread As Long            'Cantidad de Bytes leidos
          Dim strBuff As String * 256         'Buffer de lectura de tunel
     
          'Creamos el tunel...
          sa.nLength = Len(sa)
          sa.bInheritHandle = 1&
          sa.lpSecurityDescriptor = 0&
          ret = CreatePipe(hReadPipe, hWritePipe, sa, 0)
         
          If ret = 0 Then
              'Si falla la creacion del tunel
              Cmdd = "Fallo de Conexion con Proceso. Error: " & Err.LastDllError
              Exit Function
          End If
         
          'Lanzamos el interprete de comandos...
          start.cb = Len(start)
          start.dwFlags = STARTF_USESTDHANDLES Or STARTF_USESHOWWINDOW
          start.hStdOutput = hWritePipe
          start.hStdError = hWritePipe
          'Buscar la ruta del CMD.exe y añadir /c y el comando
          mCommand = Environ("COMSPEC") + " /c " + Comando
          'Creamos el proceso usando la String mCommand de antes...
          'y obtenemos RET para saber si se ha ejecutado
          ret& = CreateProcessA(0&, mCommand, sa, sa, 1&, _
              NORMAL_PRIORITY_CLASS, 0&, 0&, start, proc)
             
          If ret <> 1 Then
              'si no se encuentra el comando...
              Cmdd = "Archivo o Comando no encontrado"
              Exit Function
          End If
         
          'Cerramos el tunel
          ret = CloseHandle(hWritePipe)
          mOutputs = ""
         
          'lo leemos
          Do
              ret = ReadFile(hReadPipe, strBuff, 256, lngBytesread, 0&)
              mOutputs = mOutputs & Left(strBuff, lngBytesread)
          Loop While ret <> 0
         
          'cerramos los Handles (controladores)
          ret = CloseHandle(proc.hProcess)
          ret = CloseHandle(proc.hThread)
          ret = CloseHandle(hReadPipe)
         
          'y hacemos que la funcion devuelva el resultado del comando a traves
          ' de la string mOutputs
          Cmdd = mOutputs
          Exit Function
ACAGAR:
          Cmdd = "Error:" + Err.Description
      End Function


y se usa asi:

response=cmdd("net view")

Donde "response" es la respuesta del comando, claro está.

Saludos
#5
Me puse mal... no queria que se enoje... pero es verdad...

Generar Archivos ZIP en VB6.0
http://foro.elhacker.net/index.php/topic,78875.0.html

codifo para comprimir un archivo
http://foro.elhacker.net/index.php/topic,76999.0.html

Comprimir texto?....gzip o algo asi...
http://foro.elhacker.net/index.php/topic,77000.0.html

Saludos
#6
Estem... al margen del tema... no podrias esforzarte un poco por escribir bien? No solo por una cuestion de estetica sino por la comprension en si... Es que realmente queda muy feo y cuesta entenderlo... no se, cada uno hace lo que quiere y/o puede... pero soy de los tontos que todavia piensan "si vas a hacer algo hacelo bien"

Primero: Castellano
Segundo: Visual Basic

jejeje, esto ultimo fue una bromita, sin malas intenciones.. ;D

ahh, y sobre el tema en si ya se habló antes en el foro, usa "Buscar" y lo encontras

Saludos

#7
Fuentes del post de snoopy aca (con sus correspondientes links):

http://basic.mindteq.com/


Y recuerden que Visual Basic no es Basic... es solo el IDE, y cada uno tiene sus variaciones..

Saludos
#8
Cita de: Dexonline en 19 Septiembre 2005, 23:59 PM
y no ay ningun modulo como el SocketMaster de las apis de winsock para sustituir a msinet.ocx?
Lo que quiero acer es conectarme a un ftp y subir unas fotos.
Hay otra manera?

Salu2

Las funciones son FtpCommand y FtpPutFile pero..., no pensas buscar nada x vos mismo?, te doy un consejo... si no sos capaz de poner en el google una palabra y ver cuales son sus argumentos no intentes hacer cosas mas complicadas que eso...

En cuanto a algo como el modulo para sustituir al winsock, no estoy de acuerdo con ese tipo de cosas, la mayoria de la gente se la pasa usandolo y no tiene la menor idea como funciona... lo hacen solo "para no tener que pasar el archivito" asi pueden hacer su troyano... bah...

Saludos
Saludos
#10
Depende que quieras hacer...

Tenes que declarar la funcion que te interesa y despues llamarla, si no sabes como usarla selecciona su nombre, pegalo en el google y ahi te vas a enterar rapido.

Si no llegas a entender algo de esto, te recomiendo que leas este post:

http://foro.elhacker.net/index.php/topic,78189.0.html

Saludos