2011-11-21 9 views
5

Hola, ¿hay alguna manera de descargar la entrada de BibTeX para algo de Google Scholar usando PHP sin tener que descargar BibTeX manualmente uno por uno? Por ejemplo, establecer un valor de búsqueda como "investigación" y luego descargar el BibTeX relacionado de los enlaces automáticamente a través del código.¿Hay alguna manera de descargar bibtex de Google Scholar usando PHP

Cualquier ayuda sería apreciada. Traté de obtener la página HTML, pero cuando intento obtener el contenido de la página, el enlace "Importar a BibTeX" desaparece en los contenidos de la página recuperada.

Mi código:

<?php 
$url = 'http://scholar.google.com/scholar?q=honors+college&amp;hl=en&amp;btnG=Search&  amp;as_sdt=1%2C4&amp;as_sdtp=on'; 
$needle = 'Import into bibtex'; 
$contents = file_get_contents($url); 
echo $contents; 
if(strpos($contents, $needle)!== false) { 
echo 'found'; 
} else { 
echo 'not found'; 
} 
?> 
+0

Muchas de las interfaces basadas en la web de Google dependen en gran medida de JavaScript, lo que no puede manejar su scared de pantalla. Tendría que averiguar qué sucede en segundo plano para replicarlo a través de scripts. –

+0

Creo que el enlace "Importar en bitex" solo se muestra cuando estás conectado. Intenta iniciar sesión en Google (que no sé cómo hacer programáticamente) y luego busca la página de Scholar. – koppor

Respuesta

0

La respuesta corta es No, no puedes hacer esto

Google no proporciona API para la búsqueda/académico y utiliza la tasa de limitación de la firma. El problema es que para cada entrada BibTex necesita 2 solicitudes adicionales (1 para la consulta, 1 para el 'enlace de importación' y una final para obtener el contenido real de la entrada BibTex)

Escribí un guión que arrastra Google Scholar resultados y encuentra los enlaces BibTex y guarda los resultados. Sin embargo, debido al límite de velocidad no es viable y se bloqueará casi al instante.

El código se puede ver aquí: https://gist.github.com/Tessmore/11099509 y es gratuito, pero bajo su propio riesgo.

Cuestiones relacionadas