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ú

Temas - lnvisible

#1
Programación General / hakerrank
6 Febrero 2015, 14:04 PM
¿Conocéis harkerrrank?  :rolleyes:

https://www.hackerrank.com/

Si no lo conocéis deberíais, puede ser interesante para practicar.   ;D
#2
Es una pregunta bastante sencilla y habitual, pero cada maestrillo tiene su librillo. Hay varios grupos de librillos:


Los que recomiendan C/C++

Suelen ser la misma escuela que te recomienda seguir después con ensamblador. Lo que vas a aprender de esta forma son conceptos como los punteros (muy importantes) y vas a conocer el ordenador a un nivel bajo (es decir, muy cerca del hardware). La abstracción que proporcionan estos lenguajes es poca.

C y C++ son lenguajes que se utilizan precisamente por su bajo nivel y por generar código eficiente, por lo que se siguen utilizando y se van a seguir utilizando por mucho tiempo. Si lo que te interesa es programar al más bajo nivel: microcontroladores, sistemas operativos y librerías del sistema operativo, sin un lenguaje que te restrinja y evite los segmentation fault (tal vez los busques) entonces C y C++ son para ti.

Si te interesa la eficiencia pero no quieres preocuparte de los problemas de memoria tal vez otras opciones como Julia o Rust sean mejores.


Los que recomiendan Python

Python es un lenguaje con una sintaxis sencilla y parecida a pseudocódigo, heredero de la tradición de Algol, que intenta acercar el lenguaje de programación a la forma en que se describe un algoritmo.

La gente de esta escuela está por tanto más preocupada por la algorítmica, comprender la complejidad de los programas (la notación de la O) y no tanto por punteros y eficiencia de memoria.

En el caso de Python, la disponibilidad de librerías que permiten hacer muchas cosas de forma relativamente sencilla lo hace muy atractivo, prácticamente es el lenguaje por defecto para los que programan pero programar no es su tarea principal: lingüística computacional (nltk), estadística (pandas), y un largo etcétera, incluso reemplazando a otros lenguajes que tradicionalmente tenían este nicho (R, Matlab, Octave, etc.)

Otros lenguajes en esta categoría son javascript (con una sintaxis no tan elegante) y CoffeeScript, que acerca lo que es javascript al mundo de Python. Son opciones interesantes porque permiten programar para web, lo que significa que podemos hacer pequeñas extensiones para el navegador (como GreaseMonkey), Apps para dispositivos móviles, páginas web y servicios web (también del lado del servidor, ya hay cierta tradición full stack como MEAN). Poder aplicar lo que se aprende es muy satisfactorio, especialmente para los novatos.

En algunos casos se puede recomendar Lua, porque es un lenguaje muy sencillo y con una sintaxis simple y breve. También Ruby por motivos similares.


Los que recomiendan Java

Java ha sido por mucho tiempo el lenguaje más popular, puede que aún lo sea a día de hoy. Es un lenguaje muy utilizado en las grandes empresas de software porque simplifica la programación en C con un recolector de basura y una máquina virtual que abstrae los detalles del hardware sin perder demasiada eficiencia (aproximadamente el doble de tiempo que C). Por la ayuda que proporcionan los IDEs es un lenguaje bastante popular hoy en día para enseñar programación.

Hay mucha demanda de programadores en Java, y también mucha oferta. Si sólo quieres aprender un lenguaje (y nunca más ningún otro) probablemente (a día de hoy) Java sea la mejor opción. Por lo competitivo del mercado prepárate para aprender también un montón de librerías y tecnologías, como Hibernate, Spring, Maven, SOAP y muchas otras. Tal vez no tengas muchos lenguajes para poner en el CV, pero eso no significa que sea breve, realmente el valor de Java está en todo el ecosistema que tiene alrededor.

Java es un lenguaje con un uso muy extendido, pero también muy odiado, lo que ha propiciado la aparición de otros lenguajes como Scala y Groovy entre otros.


Los que recomiendan Pascal/Delphi

O los que recomiendan Ada. Se basan en conocer los ordenadores y la programación de una forma algorítmica, como Python, pero no a tan alto nivel, conociendo algunos detalles de implementación, como C, y sin olvidar los tipos y la teoría de tipos (también presentes en Java, aunque sólo en POO), también algo importante si quieres poder participar en los clásicos debates de tipado estático frente a dinámico.

Son de la escuela: "La letra con sangre entra", o alternativamente: "no quiero que me preguntes si el compilador te dice que tienes un error". Eran la opción para aprender programación estructurada por lo que ayudaba el compilador a detectar errores, eso reducía la carga de trabajo de los profesores. Han sido relevados por Java (que es POO) porque realmente lo que se valoraba de estos lenguajes es eso, si hay que enseñar POO, se enseña, Eclipse y Netbeans ya te informan de los errores antes de compilar.

Resumen: Si alguien te recomienda Pascal, Delphi o Ada, está desactualizado y lo hace por los motivos incorrectos.


Los que recomiendan Lisp

O Scheme, Clojure, ClojureScript, Haskell o Prolog. Valoran conocer la programación funcional o declarativa, el aspecto más teórico de la programación (más que la algorítmica), como es el lambda cálculo, la lógica, la unificación, los árboles sintácticos, las macros y la homoiconicidad.

Son lenguajes que te dan una perspectiva interesante de las cosas. Pueden no ser los lenguajes más prácticos para hacer algo concreto, pero conocerlos te puede ayudar a abordar un problema aunque lo resuelvas con otro lenguaje. Son más un lenguaje a aprender que el primer lenguaje a aprender, pero ciertamente son lenguajes a muy recomendables. En el caso de Prolog es prácticamente el único en su paradigma (¿hay más?).

Es curioso porque los lenguajes de este grupo los verás poco por el foro. Son más lenguajes para la gente que quiere hacer las cosas bien que la gente que quiere hacer algo y que funcionen. La gente que pregunta cuando ya ha resuelto un problema si lo ha hecho bien y cómo podría mejorarlo (revisión de código), en lugar de la gente que pregunta porque no ha mirado la documentación y no es capaz de encontrar el fallo en el programa que ha escrito o porque ni siquiera sabe por dónde empezar a escribirlo.


Los que recomiendan PHP

PHP es un lenguaje muy popular por la tradicional LAMP. Todavía hay muchas páginas que funcionan con PHP por detrás (como este foro) y eso le garantiza sobrevivir por mucho tiempo. Fue un lenguaje que cumplió con una tarea decentemente y fue prácticamente la única opción para quien quería hacer algo en ese nicho, lo que garantiza que mucha gente lo use. Por el diseño del lenguaje también se garantizó que mucha gente lo odiara.

Quienes te recomiendan empezar por PHP son mala gente, no les escuches. Tampoco escuches a los que te recomiendan VisualBasic, Perl, Brainfuck ni Malbolge, bloquéales en cualquier red social en la que puedan llegar a ti. Es broma, simplemente es una opción extraña y no está muy claro si te va a enseñar a programar bien o a programar mal, mejor cualquier otra.


Los que recomiendan Bash

Son administradores de sistemas. Bash es muy potente, pero nadie lo toma en serio como lenguaje de programación y nadie te tomará en serio como programador, aunque consigues un +10 en frikismo y es muy satisfactorio poder arreglar algo simplemente con un script. Además, para cualquier cosa que haga el SO (como mover ficheros) es más eficiente que hacerlo tú mismo en C (ya lo hace el SO) y también tienes muchas herramientas (en lugar de librerías) para usar, como grep, sed, awk, etc.

Si te interesa la administración de sistemas, es el lenguaje a aprender, o tal vez csh, o PowerShell, seguramente todos. Pero es raro que alguien recomiende empezar por uno de ellos, hazlo por tu cuenta y riesgo.


Los que recomiendan la familia .NET

Tradicionalmente se ha asociado con Microsoft, especialmente para el desarrollo de aplicaciones de escritorio, aunque ahí está ASP.NET para solucionar eso. Para Linux está la alternativa de Mono, pero aun así parece un intento fallido por parte de Microsoft para capturar el mundo de la programación.

La estrella indiscutible, C#, se usa en muchos entornos industriales, pero siempre por detrás de C y Java, es difícil encontrar excusas para apostar por C# en lugar de uno de los otros dos, que por otro lado tampoco son los líderes indiscutibles de la lista (aunque sí pueden ser líderes discutibles).


Los que recomiendan LaTeX

No quieren programar, quieren \emph{publicar}. Hay lenguajes de programación que son Turing completos pero tienen un uso específico para el que están hechos, otro ejemplo es XSLT. Si lo que quieres hacer es eso, puede ser la mejor opción, pero sólo para hacer la cosa concreta para la que han sido diseñados. Lo mismo con ActionScript y Flash.


Los que recomiendan Go o Erlang

Gente muy centrada en la concurrencia. Seamos honestos, si tuvieras un cluster o un grid bajo tu responsabilidad no estarías leyendo esto, así que me ahorro escribir esta sección.


Los que recomiendan otros lenguajes

Son gente muy rara, pregúntales por sus ideas políticas.




Puede que os interese poner esto con una chincheta o enlazado desde el FAQ o algo.

Si tenéis comentarios para mejorarlo no me importa incorporarlos.
#3
Windows / Chocolatey y ninite
3 Febrero 2015, 18:04 PM
Hola, estaba viendo que en el mundo de Windows existen estas alternativas.

Esto es algo que Windows ha necesitado durante mucho tiempo, pero... ¿Creéis que son seguras?

Dan un poco de mal rollito, ¿no?

Linux parece que inspira más confianza, aunque sea por tradición, o porque por número de usuarios es una opción menos "jugosa".

¿Qué opinais?
#4
Hardware / que adaptador?
16 Noviembre 2014, 17:13 PM
Tengo un portatil con puertos hdmi y mini display, y un monitor con vga. Que adaptador deberia coger?
#5
Ya se acercan las navidades y me han asignado una tarea que me parece más bien imposible.

Me han dado de presupuesto 500€, 600 si hace falta, para encontrar un portátil para regalar y que tiene que servir para jugar.

Yo creo que es mejor un ordenador normal, incluso alienware alpha sería una buena opción, pero como lo he dicho inmediatamente me han dicho que al menos busque...

Por lo que he visto el precio de los portátiles para jugar decentemente no baja de los 800€, y eso yendo a los que ya están un poco anticuados. A lo mejor alguno de gama "no muy alta" puede acercarse a los 600, pero a los 500 es prácticamente imposible.

¿Podéis confirmarme que es imposible para que así pasemos a pensar en otras cosas?
#6
Foro Libre / Buscar en emule, sin emule
17 Marzo 2014, 17:23 PM
Hace tiempo había páginas web en las que se podía buscar enlaces ed2k. No estaban indexados, no era una página web de enlaces, se conectaban a la red de ed2k, buscaban y daban los resultados, igual que si se activa el servidor de http de emule (pero con otra interfaz).

Por una historia muy larga no tengo otra opción más que usar eso, preferiblemente para la red kad, ¿sería posible?

GRacias!!
#7
Hardware / Evolución de la RAM media
20 Enero 2014, 17:31 PM
Me gustaría ver una gráfica con la evolución de la RAM media que podemos encontrar en los equipos domésticos.

Mi impresión es que antes se doblaba casi cada año, pero llevamos varios años estancados en los 4GB.

Aun así me gustaría ver una gráfica. Creo que sería interesante.
#8
Seguridad / login de gmail
16 Enero 2014, 18:55 PM
A veces gmail me hace hacer login sin motivo aparente.

Hace un momento tenía la pantalla de gmail y de repente ha cambiado y me ha pedido el login, sin que hiciera nada, entre los parámetros de la página de login estaban estos: service=mail&passive=true&rm=false

¿Es normal o debería preocuparme?

GRacias!!
#9
Quiero añadir y quitar reglas de CSS de una página.

No quiero cambiar el estilo de un elemento concreto, tengo una tabla de dimensiones 100x1000 (eso hace 100000 elementos) y puedo ponerle clases como corresponde a todos ellos. Quiero poner reglas para que se muestren unos u otros, por ejemplo display:none, y luego poder quitarlas...

Todo lo que he encontrado es el $('td').css('display', 'none') de jQuery y eso lo que hace es cambiar el css de los elementos en el html, con el atributo style, no cambiar las reglas css.

¿cómo puedo hacer eso?

GRacias!!
#10
Acabo de encontrar AngularJS, no lo conocía hace dos minutos, literalmente.

Parece genial, estoy pensando en aprender AngularJS aunque no lo necesito para nada porque realmente parece muy bueno, potente, etc.

jQuery ya lo conozco bastante, pero... no veo para qué querría usarlo nunca más.

Puede que me esté dejando llevar por la pasión del momento, pero, ¿no es AngularJS genial?
#11
GNU/Linux / ¿Qué fuente "monospaced" usáis?
27 Noviembre 2013, 20:06 PM
Yo usaba monospace hasta ahora, todavía la uso, viene por defecto en debian y es como DejaVu Sans Mono (creo que es la misma), pero empiezo a cansarme después de muchos años.

He estado busacndo pero no encuentro ninguna que me guste, además no sé por qué algunas no se ven bien en debian, por ejemplo no son todas igual de anchas si uso ¿cuáles usáis vosotros?

¡¡Courier New no!!

Con algunas me pasa esto:



¡¡No ocupan lo mismo!!

Es por la negrita, ésa es Droid Sans Mono. Me pasa con casi todas  :-(

GRacias!!
#12
GNU/Linux / Reproductor de música
26 Noviembre 2013, 20:21 PM
No sé qué reproductor de música escoger. Hasta ahora he estado usando vlc, pero me gustaría uno con la posibilidad de hacer búsqueda y "enqueue" de una canción. Y posiblemente definir listas de reproducción, para tener organizadas las canciones.

¿Cuál puedo escoger?

http://alternativeto.net/software/rhythmbox/?platform=linux

GRacias!!
#13
Hardware / ¿Es acer una buena marca?
9 Octubre 2013, 17:03 PM
He oido cosas malas, como el DRM y no poder instalar Linux, pero no sé si son leyendas urbanas. Tampoco sé si se rompen a los dos días.

Normalmente cuestan unos 50€ menos que los equivalentes de otras marcas, es sospechoso...

¿Qué sabéis?

GRacias!!
#14
Hardware / Cómo comprar RAM compatible
8 Octubre 2013, 21:12 PM
Quiero mirar las características de la RAM que tengo para cambiarla, y prefiero hacerlo sin instalar programas sólo para eso. Puedo usar windows XP y linux.

También puedo abrir el ordenador y mirarlo directamente en la memoria que tengo, debería estar escrito ahí.

No sé si hay que mirar algo aparte de la frecuencia de reloj.

¿Qué tengo que mirar y cómo lo miro? Luego cuando busque RAM, ¿qué debería buscar?, ¿simplemente algo que funcione con la misma frecuencia? Ahora hay cosas como DDR3 y otras que realmente no entiendo qué significan.

GRacias!!
#15
Hardware / Portátil 16GB RAM
1 Octubre 2013, 12:28 PM
Hola!

¿Alguien sabe de algún sitio en que vendan portátiles con 16GB de RAM?

No necesito que sea un i7, que tenga una super-gráfica ni nada de eso, pero sí los 16GB, que cueste unos 600€ y que tenga garantía.

Si no fuera por la garantía, compraría uno por unos 500€ y le pondría los 16GB yo misma, por menos de 100€ se puede hacer. Pero si busco ordenadores con 16GB mínimo tengo que ir a 1300€, que es demasiado.

Tiene que ser portátil, porque me muevo y necesito llevarlo, y de una marca aceptable para que no se me rompa la fuente de alimentación o la placa base y tener que tirar a la basura todo el portátil en un par de años. Debería durar un poco más.

No debería ser tan difícil, pero no encuentro nada así.

GRacias!!
#16
Redes / Velocidad de ADSL con VoIP (internet Orange)
30 Septiembre 2013, 17:42 PM
Hola

En orange te dan la ADSL sin línea de teléfono, en su lugar usa VoIP.

Me han dicho que eso significa que la velocidad en realidad es la mitad, porque tienes que dividir la línea entre ADSL y voz, pero no me lo creo, más bien creo que es como si usaras skype, y por tanto mientras estás hablando por teléfono hay más tráfico y menos velocidad, para navegar.

¿Me han intentado engañar o me estoy equivocando?

Por otro lado, lo que no sé es si al no tener que asignar un rango de frecuencias para el teléfono y tener el cable de cobre dedicado en exclusiva para la ADSL puede funcionar a mayor velocidad, no sé si eso significa que tiene un rango de frecuencias mayor disponible para su ADSL, o si es lo mismo.

¿Estoy fantaseando o esto es una realidad?, ¿es posible al menos?

GRacias!!
#17
Tengo un móvil y una tablet, los dos de samsung y con android. Quería hacer una red ad-hoc (hospot o tethering, no sé cómo se llama) para usar la conexión 3G de mi teléfono y tener internet en la tablet, pero no sé cómo se puede hacer. Creo que los dispositivos android no pueden conectarse a redes hotspot más que a través de bluetooth. Eso no es un problema, tengo bluetooth en ambos, ¿cómo podría hacerlo?

GRacias!!
#18
Hardware / ¿Cuándo harán esto?
18 Diciembre 2012, 01:20 AM
¿Cuándo harán una combinación con las funcionalidades de estos dos aparatos?

http://www.pccomponentes.com/vant__domo3_fusion_f3545t_e350_4gb_1tb_hd6310.html
http://www.pccomponentes.com/xtreamer_prodigy_black_tv_2tb_3d_full_hd_tdt_grabador_wifi_n.html

El precio apenas aumentaría (muchas cosas son duplicadas) y sería genial...

¿Sabéis si lo han hecho ya? Un mini-pc con un SO de verdad (algo mejor que android, ubuntu vale) y que sirva para grabar del TDT...
#19
Hay muchos en muchos sitios en que aparecen listados pero no comprendo el modelo de negocio ni por qué existen, dan un servicio de anonimización gratuito ¿a cambio de nada?, ¿son de fiar?

GRacias!!
#20
Windows / ¿Windows 8 para tablets?
2 Noviembre 2012, 17:31 PM
He estado echando un vistazo a las tablets con windows 8 y parece que van a ser muy caras, ¿creéis que llegarán a estar a un precio de unos 200€ como las que hay con android? ¿tienen alguna ventaja con respecto de las de android que justifique ell precio? ¿qué opinais vosotros?

GRacias!!
#21
Hola!

Quería saber que es lo habitual cuando se quieren almacenar ficheros en un sitio web.

Veo dos opciones.
a) meterlos en binario en una base de datos.
b) guardarlos en un directorio del alojamiento web.

¿Qué es lo más eficiente, lo mejor y lo que se suele hacer?

GRacias!!
#22
hola!,

En python es posible hacer un include de un fichero y el código que hay en ese fichero no se ejecuta, sin embargo si llamamos a ese fichero como script se puede añadir una función que sí se ejecuta, en este caso se hace así:

Código (python) [Seleccionar]
if __name__=="__main__":
 códigoo que se ejecuta sólo al llamar a este fichero pero no al hacer include


¿Hay alguna forma de hacer lo mismo en php?

GRacias!!

PD: no se si lo he solucionado, he hecho esto pero tengo que probaro:

Código (php) [Seleccionar]
if (debug_backtrace()){
   //ejecutar si include;
} else {
   //ejecutar si no include
}
#23
Hola!

Ambos tienen más o menos el mismo precio, pero no sé si tienen las mismas características. Son muy parecidos, pero no sé si el kindle fire está capado o te dan un android completo.

¿Qué diferencias hay?, ¿en qué es mejor uno y en qué es mejor otro?

GRacias!!
#24
Windows / ¿Qué tiene de especial windows 8?
8 Agosto 2012, 17:40 PM
¿Por qué no le gusta al tipo de valvle? ¿Es más restrictivo en cuanto a lo que puede hacer un usuario?, ¿limita la libertad de alguna forma? ¿o simplemente es un pulso que Steam está librando contra "XBox Windows"?, ¿se va a convertir windows en un sistema en el que no somos root? (Como los teléfonos con android, que hay que rootear, o una xbox, con funcionalidad muy limitada)
#25
Redes / ¿ssh terminal para windows?
30 Mayo 2012, 02:05 AM
Hola!

Ya conozco Putty, pero estoy acostumbrada a usar el terminal emulator de xfce4 en linux. Cuando uso ssh en windows me gustaría usar lo más parecido al terminal emulator.

http://docs.xfce.org/apps/terminal/start

Es más cómodo porque transforma los links, se puede copiar pegar con shift+ctrl+c shift+ctrl+v, y sobre todo, tiene pestañas.

Se que se puede copiar pegar en putty seleccionando y haciendo click derecho, y que en windows hay aplicaciones para añadirle pestañas a putty, pero esas no me funcionan :_(

Además putty no me gusta mucho. ¿Conocéis algo mejor?

GRacias!!
#26
GNU/Linux / Reproductor de mp3 ligero
4 Abril 2012, 21:13 PM
EStoy buscando un reproductor de mp3 ligero, que no me instale muchas dependencias en debian porque no uso gnome ni kde, quiero algo que pueda usar en xfce sin muchas dependencias.

Estaba usando vlc porque es muy cómodo, reproduce video, es ligero, tiene todo. Pero quiero algo que pueda hacer lo mismo que winamp, esto es que pueda poner una canción para que suene cuando acabe la que estoy escuchando y otra para que suene después, sin cambiar la playlist. En winamp se hace con f3. ¿Se puede hacer en xmms?

¿Conocéis algún reproductor con el que pueda hacer eso? Con vlc a lo mejor se puede pero no sé cómo :(
#27
Hace mucho que uso vim, estaba buscando un editor de texto plano para debian que:
- coloree el código.
- permita buscar con expresiones regulares y reemplazar, usando lo que ha encajado en las subexpresiones para escribirlo en lo que se reemplaza, como en notepad++ () -> \#
- tenga pestañas

Algo parecido a notepad++, o a vim, pero más cómodo que vim, si no lo hay seguiré usando vim, pero antes quería preguntar por si me estaba perdiendo algo. :P

GRacias!!
#28
Software / Compartir carpetas
24 Enero 2012, 20:08 PM
¿Recordáis la opción de compartir carpetas de messenger?

Estoy buscando algo que sea igual, quiero compartir carpetas, como en dropbox, pero:
1. No quiero que vaya a un servidor.
2. No quiero tener limitaciones de espacio.
3. Quiero poder apagar el ordenador y que siga por donde iba, como en cualquier P2P o F2F.

Para windows y linux.

¿No se pregunta aquí?, ¿dónde debería preguntar?

GRacias!!
#29
PHP / [Reto][PHP] Bot http
25 Diciembre 2011, 14:45 PM
Hay un tipo de retos incrementales que son más productivos que los retos habituales.

http://en.wikipedia.org/wiki/Cutting_contest
http://en.wikipedia.org/wiki/Guitar_battle

Esto es un reto a ese estilo, consiste en ir añadiendo algo al bot para hacerlo más parecido a una persona en la navegación (con cookies, con referer, con todo eso), además para que sea más fácil indicarle los parámetros que tiene que rellenar (por ejemplo muchos formularios tienen campos hidden, podría rellenarlos él mismo), para que sea más fácil parsear el html después, para que sea más fácil usar proxies... el límite lo pone vuestra imaginación.

Creo que puede ser un reto interesante, entretenido, productivo y del que todos saquemos el divertirnos, un código interesante y aprender y hacer algo útil. Vosotros diréis.

Aquí tenéis un ejemplo de cómo podría empezarse, veremos si alguien continua o no, en unos días pondré una mejora si nadie se anima, y con eso espero que ya sí se anime alguien.

Código (php) [Seleccionar]
class PHPBot {

   function PHPBot (){
     $this->ch = curl_init();
     $ch = $this->ch;
     curl_setopt($ch, CURLOPT_HEADER, 1); // Include headers in response or not
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Return (don't print) answer of exec
     curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.12) Gecko/2009070611 Firefox/3.0.12");
     curl_setopt($ch, CURLOPT_AUTOREFERER, true); // Isn't this great?
     curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: */*', 'Accept-Language: en-us,en;q=0.5', 'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7'));      
   }
   
   private function act($url, $params = false){
     $ch = $this->ch;
     curl_setopt($ch, CURLOPT_URL, $url);
     if ($params != false){
       curl_setopt($ch, CURLOPT_POSTFIELDS, $this->myurlencode($params));
       curl_setopt($ch, CURLOPT_POST, 1);
     }
     else
       curl_setopt($ch, CURLOPT_POST, 0);
     $r = curl_exec($ch);
     return $r;
   }
   
   private function myurlencode($dict){
     $r = "";
     foreach($dict as $key => $value)
       $r = $r.urlencode($key).'='.urlencode($value).'&';
     return $r;
   }
   
   function get ($url){
     return $this->act($url);
   }
   
   function post($url, $params){
     return $this->act($url, $params);
   }

 }
#30
¿Alguien sabe dónde puedo encontrar un sistema ya hecho para google app engine que permita a los usuarios registrarse en mi sitio web usando twitter, facebook u openid? Creo qeu no hace falta dcer más, preguntadme si la pregunta no está clara.

GRacias!!
#31
PHP / Sistema de login.
30 Noviembre 2011, 21:09 PM
¿Alguien sabe dónde puedo encontrar un sistema ya hecho que permita a los usuarios registrarse en mi sitio web usando twitter, facebook u openid? Creo qeu no hace falta dcer más, preguntadme si la pregunta no está clara.

GRacias!!
#32
Seguridad / Habilitar inserción de swf en un foro
27 Noviembre 2011, 19:05 PM
¿cuán seguro es? ¿qué riesgos de seguridad puede haber?

GRacias!!
#33
¿Hay alguna forma de ver los temas que no han sido respondidos? En phpbb hay n link para ver los temas que no han sido respondidos.

Los temas que han sido respondidos, si no los he preguntado yo, no me interesan...
#34
Scripting / ¿Reflexión en javascript?
30 Septiembre 2011, 21:14 PM
Estaba pensando qeu podría ser interestante un bot en javascript o php.  :¬¬

http://foro.elhacker.net/php/reto_bot_en_php-t339155.0.html;msg1669113;topicseen#msg1669113

Todavía estoy decidida a hacerlo con una cosa u otra, pero hay algo qeu podría ser decisivo...

¿javascript puede cargar y ejecutar código con reflexión?

porque s i es así entonces con javascript es mucho mejor, se puede hacer un bot que cargue y ejecute el javascript de las páginas, que es algo que muchos bots no hacen.  :o y sería muy fácil.

¿se puede?  :huh:

GRacias!!
#35
Software / [firefox] mostrar pares de paréntesis
19 Septiembre 2011, 12:55 PM
Al leer código en un editor es fácil pasar con el cursor por los paréntesis y que se remarquen en rojo, o con un sombreado, o cualquier cosa, para ver cuál va con cual.

Quiero una extensión de firefox que haga eso, seguro que e sfacil ccon cosas como greasemonkey, ¿verdad? yo creo que si y espero que ya haya una y me digais cual  ;)

GRacias!!
#36
PHP / [Reto] Bot en PHP
16 Septiembre 2011, 00:38 AM
Hay un tipo de desafíos que se ven en las películas, con los músicos (o raperos, que son músicos de la voz) entran en un pique, uno hace algo y el otro tiene que hacerlo y luego superarlo. También los hay que lo hacen con mates de valoncesto y otras cosas.

Esto es un reto a ese estilo, consiste en ir añadiendo algo al bot para hacerlo más parecido a una persona en la navegación (con cookies, con referer, con todo eso), además para que sea más fácil indicarle los parámetros que tiene que rellenar (por ejemplo muchos formularios tienen campos hidden, podría rellenarlos él mismo), para que sea más fácil parsear el html después, para que sea más fácil usar proxies... el límite lo pone vuestra imaginación.

Creo que puede ser un reto interesante, entretenido, productivo y del que todos saquemos el divertirnos, un código interesante y aprender y hacer algo útil. Vosotros diréis.

Esto ha venido inspirado por este mensaje:

Cita de: lnvisible en 16 Septiembre 2011, 00:32 AM
Y lo que yo digo es que si entre todos juntamos un poquito que aporte cada uno lo podemos hacer mucho mejor.

Por ejemplo, lo que has hecho madpitbull quedaría así:

Código (php) [Seleccionar]
<?php
class PHPBot {

    private 
$ch;

    function 
__construct() {
      
$this->ch curl_init();
      
curl_setopt ($this->chCURLOPT_COOKIEJAR'cookie.txt');
      
curl_setopt ($this->chCURLOPT_RETURNTRANSFER1);
    }
    public function 
getURL(urlargs) {
      
curl_setopt($this->chCURLOPT_URLurl);
      if (
args){
        
curl_setopt ($this->chCURLOPT_POSTFIELDSfuncionquenoexistetodavia(args);
        
curl_setopt ($this->chCURLOPT_POST1);
      }
      return 
curl_exec($this->ch);
    }
    function 
__destruct() {
       
curl_close ($this->ch); 
    }
}
?>


Pero para hacer un buen bot todavía queda mucho.

También intuyo que habrá mejores formas que curl, no parece estándar de php.
#37
Desde hace unos días tengo un problema con las alarmas de android. El teléfono, si no lo uso, entra en una especie de hibernación, e hiberna tanto que no suena ni la alarma. Cuando le doy a algún botón se activa y, si la hora de la alarma ya ha pasado, suena, pero no suena en su momento, tengo que darle a algún botón, así que las alarmas son un poco inútiles... :(
#38
Hola!  :D

Ayer dejé mi movil android cargando y actualizando las aplicaciones. Hoy me ha dado un mensaje de que tenia poco espacio en memoria. Me ha mostrado opciones para borrar programas, pero he cerrado esa ventana y lo he apagado.

Tengo un HTC tattoo. Ahora cuando intento encenderlo no se enciende, se queda la pantalla en negro. Pone tatoo, el logo del operador, sale el androide verde saludando, las letras HTC con un brillo que va de izquierda a derecha y luego se queda en negro, para siempre.

¿Hay alguna forma de iniciarlo en modo seguro o algo así? :\

GRacias!!
#39
Scripting / [python] procesar html
28 Mayo 2011, 21:44 PM
Hola.

Quiero procesar html en python, no estoy segura de si quiero pasarlo a objetos python como con amara, si quiero usar xml.dom que viene ya de serie con python o si quiero usar xquery o xpath para extraer los valors.  :¬¬

De lo que estoy segura es de que no quiero aprender las cuatro cosas para luego ver que no me vale, o que otra es mejor o que he perdido el tiempo, o que no se.  :-\
¿que es lo mejor y lo que deberia aprender?  :huh:

Quiero algo que sea facil, estandar y potente. Lo quiero todo  ;D

GRacias!!

PD: ah!!  :-X uso python3, amara no me vale por eso, pero puede que haya otras cosas iguales  :huh:
#40
Scripting / [python] crawler http
20 Abril 2011, 23:43 PM
Hola,

Quiero hacer un bot http, pero a la primera de cambio, en cuanto he intentado hacer login en un sitio, ya no he podido seguir, algo falla y no se que es.

Este es el bot, muy simple, aunque estoy muy orgullosa de lo que llevo :D

Código (python) [Seleccionar]
import http.client, urllib.parse
from http import cookies
from re import findall

class CrawlerGeneral ():
 def __init__(self):
   self.logininfo = []
   self.baseheaders = {"User-Agent":"Mozilla/5.0 (Windows; en-US; XP) Gecko/20101028 Firefox/3.5.15",
                       "Accept": "*/*", "Accept-Language":"en-us,en;q=0.5",
                       "Accept-Charset": "ISO-8859-1,utf-8;q=0.7,*;q=0.7"}
   self.cookies = cookies.SimpleCookie()
   self.referer = ''
       
 def _act(self, url, method, params={}):
   headers = self.baseheaders.copy()
   headers['Referer'] = self.referer
   headers['Cookie'] = self.cookies.output(header='', sep=';')
   self.referer = url
   if(url[:7] == 'htt'+'p://'):
     url = url[7:]
     safe = False
   elif (url[:8] == 'htt'+'ps://'):
     url = url[8:]
     safe = True
   else:
     self.error("I don't like the protocol, I don't know how to handle this.\n" + url)
   (baseurl, extendedurl) = url.split('/', 1)
   extendedurl = '/' + extendedurl
   params = urllib.parse.urlencode(params)
   conn = http.client.HTTPConnection(baseurl) if not safe else http.client.HTTPSConnection(baseurl)
   conn.request(method, extendedurl, params, headers)
   resp = conn.getresponse()
   return self._processResponse(resp)

 def _processResponse(self, resp):
   data = resp.read()
   headers = resp.getheaders()
   data = bytes.decode(data)
   for (k, v) in headers:
     if k == 'Set-Cookie':
       self.cookies.load(v)
   return (headers, data)

 def post(self, url, params):
   realparams = urllib.parse.urlencode(params)
   return self._act(url, 'POST', params)

 def get(self, url):
   return self._act(url, 'GET')


Esto es lo que intento hacer para que haga login:

Código (python) [Seleccionar]
from crawlergeneral import CrawlerGeneral
from re import findall
cg = CrawlerGeneral()
(headers, data) = cg.get('htt'+'p://foros.solocodigo.com/ucp.php?mode=login')
sid = findall('type="hidden" name=%2526quot%253Bsid%2526quot%253B value="([^"]+)"', data)[0]
(headers, data) = cg.post('htt'+'p://foros.solocodigo.com/ucp.php?mode=login', {'username' : 'Invisible', 'password': 'password', 'sid':sid, 'redirect': 'index.php', 'login':'Identificarse'})
print(data)


Pero no funciona, y no se por que...

Necesito hacer login porque en algunos sitios la informacion que se muestra es distinta dependiendo de si haces login o no, este foro lo estoy usando para empezar, porque el login es simple en comparación con otros, creo :-\

GRacias!!
#41
Android / conectar móvil android con google
17 Abril 2011, 23:38 PM
Hola,

Tengo un problemita  :-\ mi móvil android no se conecta con google, puedo navegar por internet con la red wifi y todo eso, pero cuando pongo el nombre de ususuaria y la contraseña me dice:

CitarNo se puede establecer una conexión de datos fiable con el servidor.

Es posible que se trate de un problema temporal o que no se proporcione la tarjeta SIM para servicios de datos. Si el problema persiste, llama al servicio de atención al cliente.

No lo entiendo  :huh: ¿qué puedo hacer?

GRacias!!
#42
Hacking / Webproxies
12 Abril 2011, 22:41 PM
Uso muchos webproxies para muchas cosas pero hoy no me funciona casi ninguno.  :-\

http://proxy.org/cgi_proxies.shtml

¿Soy la única a la que le pasa o a vosotros también?  :huh:

No me funcionan estos:
http://free-proxy.me/
http://fetch4.me/
http://open-surf.com/
http://surfmo.com/
http://open-browser.com/

Y seguramente más que tampoco he probado, no me funciona casi ninguno... sospecho que podría ser algo como mis DNS  :¬¬

GRacias!!
#43
He intantado con todos lo que hay en zlib pero no lo consigo :( , he llegado hasta aquí:

Código (python) [Seleccionar]
headers = {"User-Agent":"Mozilla/5.0 (Windows; en-US; XP) Gecko/20101028 Firefox/3.5.15", "Accept": "*/*", "Accept-Language":"en-us,en;q=0.5", "Accept-Encoding": "gzip,deflate", "Accept-Charset": "ISO-8859-1,utf-8;q=0.7,*;q=0.7"}

import http.client
conn = http.client.HTTPConnection("foro.elhacker.net")
conn.request("GET", "/", None, headers)
pr = conn.getresponse()
pr.getheaders()
content = pr.read()
import zlib


¿Que tengo que hacer para coger la página?

GRacias!!
#44
A ver si puedo hacer esto de una manera facil :\

Tengo una función a la que le llegan dos strings. Uno es una ruta /carpeta/otracarpeta/...variasveces .../fichero . El otro es el texto que tengo que escribir en ese fichero.

¿Tengo que partir la ruta con split('/') y mirar que todas las carpetas existen y si no crearlas? ¿No hay una forma de decirle a python que lo haga él mismo?

Yo quiero hacer algo como esto:

Código (python) [Seleccionar]
def write(f, t):
  with open(f, 'w') as o:
    o.write(t)


me gusta python por que es facil, debería ser así..... :\

GRacias!!
#45
Me cuesta un poco esto de mirar las fechas, no tengo muy claro como se hace...

puedo usar "FTP.retrlines("LIST")" o "FTP.dir()" pero me saca por la salida los resultados y no puedo procesar los resultados, además tengo que parsearlos... he probado MLSD que estoy segura de que sería mejor, pero no me deja hacer eso.

¿Como puedo obtener las fechas de modificación de carpetas y archivos para descargar incrementalmente desde la últimav ez?

GRacias!!