modificar codigo con programa

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

modificar codigo con programa

Mensaje por iamchavo »

Holaa tanto tiempo que no pasaba por aca jaja, les queria preguntar algo porque estoy en un proyecto y quiero ver si se puede.
me cree una pagina web para ponerle fondos al facebook. esta echo en CSS y ahi una seccion que se llama por ejemplo:

background: url("http://http://www.tcd.ie/disability/pro ... cebook.jpg")

yo lo que necesito es hacer un programa que tenga un cuadro donde el usuario pege una url de la imagen que quiera de fondo y esta se coloque en la parte en negrita del codigo de arriba. eso seria el principio del proyecto , si soluciono esta parte les cuento el segundo paso q quiero hacer :).

el problema de esto es que yo despues necesito copiar todo el CSS incluyendo la nueva url. para despues copiarla en la pagina donde guardo las CSS ,ese creo que es el mayor problema

bueno gente mientras espero la respuesta voy a empezar a hacer la parte grafica :)

saluudoos
Avatar de Usuario
gna08
Hacker del Foro
Mensajes: 379
Registrado: 27 Sep 2008, 18:51
Ubicación: Cordoba, Argentina

Re: modificar codigo con programa

Mensaje por gna08 »

pero k keres modificiar. osea un archivo en tu disco local.. un .. css.. o algo de un sitio web. y atraves de post.. modificarlo?..
ay 1 funcion .. StringReplaceInFile (creo) k hace eso, reemplazar sierto string en un archiov.. (jamazs lo user pork tengo mis tecnicas para esto) bueno. y si es en un explorador es otra cosa..
Explicate ;)
y saludos :smt006
Aunk no m Buskes, Seguro m enkontras!
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

bueno punto jaja me olvide de mensionar que modificar xD, seria un .txt con todo el codigo css, en donde ahi una parte que se encuentra esta linea

body:not([class~="UIFramedPage"]){
background: url("http://imagen.jpg") #000000 center fixed no-repeat!important;

}

yo lo que tengo que hacer es que el programa remplaze en el txt, el link de la imagen por la que ponga el usuario en el cuadro del programa a crear. ese txt podria venir incluido en la carpeta del programa.

los css los guardo en http://userstyles.org , lo que tambien me gustaria hacer es que desde el programa yo le de un usuario y contraseña y se loge en modo oculto en esa pagina, y luego copiar el codigo css que acaba de modificar el usuario en el cuadro que aparece en la foto.

Imagen

en resumen seria un programa para subir los codigos a esta pagina.
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

Y por que quieres hacer esto con un programa en AutoIt? Lo suyo es que lo subas desde la web no?
Lo de dejar que el usuario entre en una zona privada de tu ubicación de tu página puede ser un tanto peligroso.
Además, directamente desde tu web se ahorran pasos y no tienen que tener un programa a parte.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

lo de autoit surgio para que con solo poner el link de su imagen el programa haga el resto, ya que la gente no va a tener ganas de hacer tanto quilombo xD o le puede resultar "dificil". obvio q se puede desde la pagina userstyles.org pero si hago una cuenta para todos siempre ahi algun vivo que borra algo o cambia la contraseña.
y en mi pagino seria muchisimo mas problematico subirlo ,porque es un blog de blogger, y tendrian que crearse una cuenta el blogger y saber usarlo.
si pudiera hacer este programa me salvaria muchisimo. mira esta es mi pagina www.fblook.com.ar , no es para spam ni nada si quieres despues borro el link, es para que veas de que se trata.
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

Intenta sustituir el texto del fichero como dice gna08, exactamente la función se llama _ReplaceStringInFile. Mira en la ayuda.
iamchavo escribió:los css los guardo en http://userstyles.org , lo que tambien me gustaria hacer es que desde el programa yo le de un usuario y contraseña y se loge en modo oculto en esa pagina, y luego copiar el codigo css que acaba de modificar el usuario en el cuadro que aparece en la foto.
Esto lo puedes hacer con un gui hecho por tí, y con las funciones que empiezan por _IE..... para acceder a la página y pegar el código en el cuadro de texto. Aunque si la página es tuya puedes hacer un acceso más profesional sin necesidad de atacar la página con IE. Yo lo haría con Inet, o con tcpsend.

Intenta hacer algo de código y cuando te atasques en algo cuelgalo.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

dale muchas gracias por sus respuestas , me pondre a ver que logro :) , la pagina donde de userstyles no es mia ,es como un servidor para alojar css :)
nos vemos en un rato seguro xD jaja porque emepezaran las dudas :P
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

holaa ya empezee con las dudas jaja.
miren hasta ahora logre hacer esto gracias al ejemplo

Código: Seleccionar todo

#include <File.au3>

$url = "URL"
$posicion = "Posicionr"


$filename = "C:\Plantilla.txt"
$msg = @CRLF

$msg = "{background: transparent url(""" & $url & """) repeat-x scroll " & $posicion & " !important;} " & @CRLF


FileWrite($filename, $msg )
	
ahora el problema:

Necesito escribir el script antes de ese ( {background: transparent url(""" & $url & """) repeat-x scroll " & $posicion & " !important;} ,el script tiene demasiadas lineas , si yo guardo el script en otro txt llamemoslo script.txt, como hago para que el programa copie todo lo que esta adentro de script.txt y lo coloque antes del ( {background: transparent url(""" & $url & """) repeat-x scroll " & $posicion & " !important;}.

nos vemos :D
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

Una pregunta, cuando lleno los campos de " URL de la imagen" y " Nombre de la imagen" , no me cambia en el plantillas.txt por lo que puse yo , supongamos que en "Nombre de la imagen", pongo" paisajes de armoles" ,en el .txt me aparece "Nombre de la imagen".

porque puede ser?

gracias :D

Código: Seleccionar todo

#include <File.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("FBlook.com.ar", 633, 276, 193, 125)
GUISetIcon("C:\Archivos de programa\Facebook Notifications\APNotifications.exe")
$pagina = GUICtrlCreateInput("URL de la imagen", 80, 56, 481, 21)
GUICtrlSetCursor (-1, 5)
$Button1 = GUICtrlCreateButton("Aceptar", 240, 152, 153, 57, 0)
GUICtrlSetCursor (-1, 0)
$Nombre = GUICtrlCreateInput("Nombre de la imagen", 208, 24, 225, 21)
GUICtrlSetCursor (-1, 5)
$Checkbox1 = GUICtrlCreateCheckbox("Izquierda", 136, 96, 73, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Abajo", 224, 96, 81, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Centro", 304, 96, 81, 17)
$Checkbox4 = GUICtrlCreateCheckbox("Arriba", 384, 96, 81, 17)
$Checkbox5 = GUICtrlCreateCheckbox("Derecha", 464, 96, 81, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###



While 1
	
$find = GUICtrlRead($Nombre)
$pag = GUICtrlRead($pagina)


$filename = "C:\Plantilla.txt"
$msg = @CRLF

$msg = "{background: transparent url(""" & $find & """) repeat-x scroll" & $pag & " !important;} " & @CRLF


FileWrite($filename, $msg )

exitloop
WEnd
While 1

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

EndSwitch

WEnd
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

ayuda por favor :(
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

hola chefito , estube probando lo que me dijistes y me resulto con este que me pasastes al principio

_ReplaceStringInFile(@scriptdir & "\" & "Plantilla.txt","http://imagen.jpg","http://www.tcd.ie/disability/projects/DS3/images/facebook.jpg").

pero pasa algo raro , cuando en la seccion "URL de la imagen" pongo algo , el plantillas.txt se modifica pero solo aparece background: url("http://3/") , porque escribe en el txt ese numero y no lo que yo puse en "URL de la imagen" ? :smt017

Código: Seleccionar todo

    #include <File.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("FBlook.com.ar", 633, 276, 193, 125)
    $Pagina = GUICtrlCreateInput("URL de la imagen", 80, 56, 481, 21)
    GUICtrlSetCursor (-1, 5)
    $Button1 = GUICtrlCreateButton("Aceptar", 240, 152, 153, 57, 0)
    GUICtrlSetCursor (-1, 0)
    $Nombre = GUICtrlCreateInput("Nombre de la imagen", 208, 24, 225, 21)
    GUICtrlSetCursor (-1, 5)
    $Checkbox1 = GUICtrlCreateCheckbox("Izquierda", 136, 96, 73, 17)
    $Checkbox2 = GUICtrlCreateCheckbox("Abajo", 224, 96, 81, 17)
    $Checkbox3 = GUICtrlCreateCheckbox("Centro", 304, 96, 81, 17)
    $Checkbox4 = GUICtrlCreateCheckbox("Arriba", 384, 96, 81, 17)
    $Checkbox5 = GUICtrlCreateCheckbox("Derecha", 464, 96, 81, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###





    _ReplaceStringInFile(@scriptdir & "\" & "Plantilla.txt","http://imagen.jpg", "http://" & $Pagina & "/")





    While 1

       $nMsg = GUIGetMsg()
       Switch $nMsg
          Case $GUI_EVENT_CLOSE
             Exit

    EndSwitch

    WEnd
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

Pues por algo muy sencillo. Porque seguro que la variable $pagina=3 :smt005 . Le estás diciendo que te sustituya eso por esto otro: "http://" & $Pagina & "/". Como ves te pone el http:// más el valor de la variable $pagina (que como ya te he dicho será igual a 3, más /. El resultado..... http://3/ .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

pero cuando le cambia el nombre a la variable tambien pasa lo mismo, por ejemplo le pongo de nombre $fblook o $sadwqrwq y tmb me aparece un numero :/ , que le tengo que cambiar al codigo de arriba ?
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

Claro, por mucho que le cambies la variable siempre te va a dar eso porque es lo que te tiene que dar :smt005 . La función GuiCtrlCreateInput (y todas las que crean controles), devuelven el número identificador del control (ControlID). En este caso es el control número 3.
Para conseguir el texto que se escribe dentro tienes que recuperarlo con GUICtrlRead($pagina).
Quedaría:

Código: Seleccionar todo

_ReplaceStringInFile(@scriptdir & "\Plantilla.txt","http://imagen.jpg", "http://" & GUICtrlRead($pagina) & "/")
Hay que leerse algo más la ayuda de las funciones. Si llegas a analizar un poco el ejemplo de la funcion guictrlcreateinput te hubieses dado cuenta de esto, ya que utilizan guictrlread para recuperar el texto :smt018 .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

muchisimas gracias chefito por tu tiempo y pasiencia, logre hacer lo que queria gracias a tu ayuda, ahora voy a ver si puedo agregarle un par de detalles.

nos vemos en la prox duda jajaja :) , saludos

aca dejo el codigo de como quedo el programa:


Código: Seleccionar todo

#include <File.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <String.au3>
#include <IE.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("FBlook.com.ar", 433, 276, 193, 125)
$creador = GUICtrlCreateInput("Tu Nombre", 110, 24, 225, 21)
GUICtrlSetCursor (-1, 5)
$pagina = GUICtrlCreateInput("URL de la imagen", 50, 100, 355, 21)
GUICtrlSetCursor (-1, 5)
$Button1 = GUICtrlCreateButton("Aceptar", 140, 152, 153, 57, 0)
GUICtrlSetCursor (-1, 0)
$Nombre = GUICtrlCreateInput("Nombre de la imagen", 110, 56, 225, 21)
GUICtrlSetCursor (-1, 5)

$Checkbox5 = GUICtrlCreateCheckbox("Derecha", 464, 200, 81, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


while 1
	
	$msg = GUIGetMsg()
	Select
		Case $msg = $GUI_EVENT_CLOSE
			Exit
		Case $msg = $Button1
$IeObj=_IECreate("http://userstyles.org/styles/new")
$ieform=_IEFormGetCollection($IeObj,1)
$InpUs=_IEGetObjByName($ieform, "login-existing")
$InpPass=_IEGetObjByName($ieform, "password")
_IeFormElementSetValue($InpUs, "usuario")
_IeFormElementSetValue($InpPass, "contraseña")
_IeLoadWait($IeObj)
_IEFormSubmit($ieform)
_IeLoadWait($IeObj)
sleep(1000)

exitloop
EndSelect
   wend
   
$Inpshort=_IEGetObjByid($IeObj, "style_short_description")
$Inplong=_IEGetObjByName($IeObj, "style_long_description")
$Inpcss=_IEGetObjByid($IeObj, "css")

_ReplaceStringInFile(@scriptdir & "\" & "Plantilla.txt","xxx",GUICtrlRead($pagina))
  $file = FileRead(@ScriptDir &  "/plantilla.txt")
   $final = _StringBetween($file, "<html>", "</html>")
  sleep(2000)
  
  $LowerLimit = 1

$UpperLimit = 9999999

$RandomNumber = Random($LowerLimit,$UpperLimit,1)

_IeFormElementSetValue($Inpshort, "Fondo para Facebook - " & GUICtrlRead($Nombre) &  " - FBlook.com.ar - "& $RandomNumber)
_IeFormElementSetValue($Inplong, "Fondo subido por: "& GUICtrlRead($creador) & " - Administrador :Chavo Toledo")
_IeFormElementSetValue($Inpcss,$final[0])

sleep(1000)

_ReplaceStringInFile(@scriptdir & "\" & "Plantilla.txt",GUICtrlRead($pagina),"xxx")
While 1

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

EndSwitch

WEnd
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

hola devuelta jaja tengo una duda , este es el codigo de la pagina blogger donde se postean los post. colocar el titulo lo hago perfecto pero a la hora de hacer algo en la parte del post no me deja , yo tomo como name la parte que se llama (name"textarea") es esa la que tengo que usar para la parte del post?

Código: Seleccionar todo

<div style="clear: both; display: block;"></div></div><div style="clear: both;"></div><div id="recover"><span id="spellcheckMessage"></span></div></div><textarea style="display: block;" name="postBody" rows="17" cols="47" id="textarea" wrap="soft" tabindex="5" dir="ltr">

aca el post

</textarea><iframe tabindex="5" style="display: none;" id="richeditorframe"></iframe><div id="labels-container"><table><tbody><tr><td rowspan="2" style="width: 15px;"><img id="optionsTriangle" src="../img/triangle_ltr.gif" onclick="togglePostOptions()" alt=""></td>
intente sustituir con _StringBetween , pero no me edita nada.
o remplazar el texto "aca el post" por otra cosa y tampoco me hace nada.

me dirian en que parte de la ayuda tengo que mirar o que intruccion usar.

gracias :)
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

Para poder trabajar con el objeto intentalo con:

Código: Seleccionar todo

$textarea=_IEGetObjByName($ieObj, "postBody")
o con

Código: Seleccionar todo

$textarea=_IEGetObjByid($IeObj, "textarea")
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

muchas grax ,eso lo habia intentado y me funciono , pero lo que mas drama me trae es que solo se escribi si esta en la pestaña "Edicion de HTML" si esta en redactar no funciona, y por defecto esa pagina inicia con la pestaña "redactar" activada , mira te pongo un imagen para que sea mejor.


Imagen

el codigo de esa parte es este
pero intente haciendolo con

$edicion=_IEGetObjById($IeObj,"Edición de HTML")
$edicion.click

o sino

_IELinkClickByText ($oIE, "Edicion de HTML") y no me cambia a la pestaña de "Edicion de HTML" :(

Código: Seleccionar todo

<div style="padding-top: 0pt;" id="RichEdit"><div id="modebar"><div style="clear: both;"></div><span class="on" style="" id="ShowRichEditor">Redactar</span><span style="" class="" id="ShowSourceEditor">Edición de HTML</span><div style="clear: both;"></div></div><div id="editarea"><div style="clear: both;"></div><div unselectable="on" id="richbars"><div style="clear: both;"></div><div style="display: block;" unselectable="on" id="formatbar"><span style="display: block;" id="formatbar_Buttons"><select style="display: block;" id="FontName" onclick="HidePalette()" onchange="FormatbarMenu(this, 0)"><option value="">Fuente</option><option value="arial">Arial</option><option value="courier new">Courier</option><option value="georgia">Georgia</option><option value="lucida grande">Lucida Grande</option><option value="times new roman">Times</option><option value="trebuchet ms">Trebuchet</option><option value="verdana">Verdana</option><option value="webdings">Webdings</option></select>
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: modificar codigo con programa

Mensaje por iamchavo »

ya lo arregle , fue un error mio :P
habia puesto como id "Edicion de HTML" y era "ShowSourceEditor" la id , con estas 2 lineas pude poner el texto :D


$edicion=_IEGetObjById($IeObj,"ShowSourceEditor")
$edicion.click


muchas grax igual :) ,saludos chefito
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: modificar codigo con programa

Mensaje por Chefito »

De nada. Eso son fallos tontos que todos cometemos de vez en cuando en la programación :smt005 . Me alegra que tu mismo te dieses cuenta :smt023 .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Responder