Foros del Web » Programando para Internet » Javascript »

Proteger texto(anti copia)

Estas en el tema de Proteger texto(anti copia) en el foro de Javascript en Foros del Web. Buenas Me interesaría hacer que un texto no se pudiera copiar para que no se pueda difundir facilmente. O bien que no se pueda seleccionar ...
  #1 (permalink)  
Antiguo 17/04/2008, 02:23
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Proteger texto(anti copia)

Buenas

Me interesaría hacer que un texto no se pudiera copiar para que no se pueda difundir facilmente.

O bien que no se pueda seleccionar para un posterior copy-paste, o bien que inhabilite la función de copiar. (además de la del segundo botón, porque sino puedes ir a Edición copiar o bien Ctrl+C)

¿puede hacerse esto?

Gracias.
  #2 (permalink)  
Antiguo 17/04/2008, 02:53
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Re: Proteger texto(anti copia)

no puedes evitar que se copien nada de tu web xDD

lo siento :]
  #3 (permalink)  
Antiguo 17/04/2008, 02:55
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Antigüedad: 16 años
Puntos: 4
Re: Proteger texto(anti copia)

Si el texto está en el HTML y alguien quiere cogerlo no vas a poder evitarlo.
El interesado puede desactivar Javascript y hacer copy+paste a su gusto, además siempre puede ver el código fuente y coger el texto desde allí.
Una solución sería utilizar flash, tambien se podría hacer que el texto en HTML estuviera encriptado y el Javascript lo desencriptara (inhibiendo copiar y pegar), pero esas soluciones al final perjudican en posicionamiento SEO, ya que los buscadores no van a ver tampoco el contenido.
  #4 (permalink)  
Antiguo 17/04/2008, 04:11
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Re: Proteger texto(anti copia)

Cita:
Iniciado por a2a2 Ver Mensaje
Si el texto está en el HTML y alguien quiere cogerlo no vas a poder evitarlo.
El interesado puede desactivar Javascript y hacer copy+paste a su gusto, además siempre puede ver el código fuente y coger el texto desde allí.
Bueno, cuando hablo de protegerlo hablo de protegerlo frente a gente "normal".
Gente que no se dedique a mirar el código fuente y menos a desactivar el javascript :)

¿Si fuese así, hay algún modo de evitar que el texto pueda seleccionarse o que quede deshabilitada la función copy?

He visto algo de :
if (window.selection) return false;
o <body oncopy="return false;">
  #5 (permalink)  
Antiguo 17/04/2008, 04:27
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Re: Proteger texto(anti copia)

Bueno, he googleado un rato y he encontrado algo que me ha gustado.
No puedes evitar que alguien con conocimientos te robe el contenido, pero si lo que intentas es evitar que cualquiera pueda copiar y pegar tu contenido en texto en otro sitio, aquí encontré algo util.

Este script inhabilita la opción de seleccionar el texto:
Código HTML:
<SCRIPT language=JavaScript1.2>

//Disable select-text script (IE4+, NS6+)- By Andy Scott
//Exclusive permission granted to Dynamic Drive to feature script
//Visit http://www.dynamicdrive.com for this script

function disableselect(e){
return false
}

function reEnable(){
return true
}

//if IE4+
document.onselectstart=new Function ("return false")

//if NS6
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</SCRIPT>

<SCRIPT language=JavaScript>
statuss();
function statuss()
{
window.status = "... | w o l f s p i r i t | ...";
setTimeout("statuss()", 1);
}
</SCRIPT> 
Y luego con este otro código html inhabilitamos la opción del botón derecho para más seguridad y en algunos exploradores el teclado:
Código HTML:
<body oncontextmenu="return false" onkeydown="return false"> 
Al menos de este modo no les será tan facil copiar y pegar el texto, y dando a editar "ver código fuente", puede ser un poco rollo estar eliminando etiquetas, estilos y demás...

Luego he visto también este script que se supone que inhabilita la opción de hacer una impresión de pantalla y algo más, pero no lo he probado y no se muy bien como funciona:
Código HTML:
<script language=JavaScript>
<!--

function inhabilitar(){
alert ("Funcion deshabilitada!")
return false
}
function tecla(){
alert ("Esta función está deshabilitada ;)")
return false
}
function ventana(){

document.oncontextmenu=inhabilitar
document.onkeypress=tecla
document.onkeydown=tecla
document.onkeyup=tecla
}

// -->
</script> 
  #6 (permalink)  
Antiguo 17/04/2008, 04:29
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 4 meses
Puntos: 24
Re: Proteger texto(anti copia)

Yo lo que haría es insertar la URL de mi web de forma no visible pero presente dentro del texto a proteger.
De ese modo si alguien hace copy+paste tambien se llevaría la URL, y a no ser que esté atento no se va a dar cuenta.
Por ejemplo podría poner: "Información proporcionada por www.elnombredetuweb.com"
__________________
Grupos de Música
Pop Music Stars
  #7 (permalink)  
Antiguo 17/04/2008, 05:05
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Re: Proteger texto(anti copia)

Cita:
Iniciado por aloqui Ver Mensaje
Yo lo que haría es insertar la URL de mi web de forma no visible pero presente dentro del texto a proteger.
De ese modo si alguien hace copy+paste tambien se llevaría la URL, y a no ser que esté atento no se va a dar cuenta.
Por ejemplo podría poner: "Información proporcionada por www.elnombredetuweb.com"
No acabo de entender muy bien la idea. Las imágenes las protejo con una marca de agua generada mediante php, de modo que las tengo seguros, pero en texto... nunca había oido algo así.
¿Y eso se haría con javascript?

¿Tienes a mano algún ejemplo?

O, y por cierto, ¿se podría hacer que lo de seleccionar el texto y tal solo se aplicara a una parte del texto del documento? Como no entiendo mucho de javascript.. pero tal vez con un id ...

Gracias a todos por las ayudas.

Última edición por IMAC/; 17/04/2008 a las 05:31
  #8 (permalink)  
Antiguo 17/04/2008, 11:36
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 4 meses
Puntos: 24
Re: Proteger texto(anti copia)

Cita:
Iniciado por IMAC/ Ver Mensaje
¿Tienes a mano algún ejemplo?
Ejemplo:

El el <head>
Código:
<style type="text/css">
.contenido { font-family: Sans-Serif,Verdana; text-align:left; }
.protegido { overflow: hidden; width:100px; height:1px; }
<style>
En el <body>
Código:
<div class="contenido">
Texto a proteger y que no quiero que copien
  <div class="protegido">Información proporcionada por www.IMAC_IMAC.com</div>
El DIV anterior lo pones dentro del texto a proteger donde más te guste.
</div>
__________________
Grupos de Música
Pop Music Stars
  #9 (permalink)  
Antiguo 18/04/2008, 06:13
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Re: Proteger texto(anti copia)

Gracias por el ejemplo aloqui ;)
  #10 (permalink)  
Antiguo 18/04/2008, 08:17
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años
Puntos: 35
Re: Proteger texto(anti copia)

loading..............

NONONO, la mejor forma para evitar que te copien texto es.

1.- Crear imagenes, cada letra una imagen.
2.- Tener una funcion javascript que reemplaze un texto por imagenes ;)

No se preocupen por el navegador, solo carga una vez la letra y luego está en cache :D

connection closed.
__________________

Maborak Technologies
  #11 (permalink)  
Antiguo 18/04/2008, 08:35
Avatar de IMAC/  
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
Re: Proteger texto(anti copia)

Cita:
Iniciado por MaBoRaK Ver Mensaje
loading..............

NONONO, la mejor forma para evitar que te copien texto es.

1.- Crear imagenes, cada letra una imagen.
2.- Tener una funcion javascript que reemplaze un texto por imagenes ;)

No se preocupen por el navegador, solo carga una vez la letra y luego está en cache :D

connection closed.
Lo malo de ese método es que no es muy bueno para los motores de búsqueda.
  #12 (permalink)  
Antiguo 18/04/2008, 11:03
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 4 meses
Puntos: 24
Re: Proteger texto(anti copia)

Cita:
Iniciado por IMAC/ Ver Mensaje
Lo malo de ese método es que no es muy bueno para los motores de búsqueda.
¿ Por que ? Si lo he entendido bien, el HTML original tiene el texto completo y es el Javascript el que cambia el texto por imágenes. Por tanto los spiders y los usuarios con javascript desactivado ven el texto, y los usuarios con Javascript activado ven las imágenes.

La idea no está mal, pero me imagino que para textos muy largos al navegador le puede costar hacer scroll. Y hay que tener imágenes para negritas, links, subrayados, ... en fin quizá no merezca la pena.
__________________
Grupos de Música
Pop Music Stars
  #13 (permalink)  
Antiguo 18/04/2008, 11:46
Avatar de zick  
Fecha de Ingreso: mayo-2007
Ubicación: Los Angeles - Chile
Mensajes: 168
Antigüedad: 16 años, 11 meses
Puntos: 2
Re: Proteger texto(anti copia)

No has intentado cargar el texto desde un div con ajax. De esta forma, en el codigo de fuente, te aparecería algo como <div id="contenido></div>, pero en la pagina se te desplegaría todo tu texto (cargado desde otra pagina obviamente). Aparte de eso, lo complementas con la deshabilitación del botono derecho:

Cita:
<script LANGUAGE="JavaScript1.1">

<!-- Adaptado por Tk: Compatible con IE y NS -->

function derecha(e) {
if (navigator.appName == 'Netscape' && (e.which == 3 || e.which == 2)){
alert('Botón derecho inhabilitado')
return false;
}

else if (navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2)){
alert('Botón derecho inhabilitado')
}
}
document.onmousedown=derecha
</script>
y despues con la opcion que no te permita seleccionar texto (por ende, no te permitirá copiar)

Cita:
<script language="Javascript">

function disableselect(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function ("return false")
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}

</script>
Espero te haya servido de ayuda.

Salud!!
__________________
SZC - Aplicaciones y Servicios.
http://www.szc.cl
Los Angeles - Chile
  #14 (permalink)  
Antiguo 18/04/2008, 11:51
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 4 meses
Puntos: 24
Re: Proteger texto(anti copia)

Cita:
Iniciado por zick Ver Mensaje
No has intentado cargar el texto desde un div con ajax. ...
El problema con AJAX es que el contenido no lo ven los spiders, y por tanto es un mal sistema de cara a posicionamiento SEO.
__________________
Grupos de Música
Pop Music Stars
  #15 (permalink)  
Antiguo 18/04/2008, 11:56
Avatar de zick  
Fecha de Ingreso: mayo-2007
Ubicación: Los Angeles - Chile
Mensajes: 168
Antigüedad: 16 años, 11 meses
Puntos: 2
De acuerdo Re: Proteger texto(anti copia)

Cita:
Iniciado por aloqui Ver Mensaje
El problema con AJAX es que el contenido no lo ven los spiders, y por tanto es un mal sistema de cara a posicionamiento SEO.
mmm, realmente no había pensando en el posicionamiento, muy buen punto , solo me enfoque en la idea de no seleccionar ni copiar texto..

Salud!!
__________________
SZC - Aplicaciones y Servicios.
http://www.szc.cl
Los Angeles - Chile
  #16 (permalink)  
Antiguo 19/04/2008, 16:14
Avatar de mgusdl  
Fecha de Ingreso: abril-2007
Ubicación: Malaga, España
Mensajes: 190
Antigüedad: 17 años
Puntos: 5
Re: Proteger texto(anti copia)

De esto se habla en otro tema del foro.
y como en el otro tema, el método que aporté yo es poner un div con un pixel transparente de fondo sobre la página, así si el usuario pulsa lo hace sobre el div transparente
Y el código fuente queda tal cual, sin tocar nada.

Yo lo tuve en una de mis primeras cutrewebs y no se si dio resultado porque no tenia apenas visitas XD
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 20:07.