sql >> Base de Datos >  >> RDS >> Mysql

Guarde la URL de la imagen de la búsqueda de Google en MySQL

Te sugiero que uses la Biblioteca DOM de PHP . Es muy potente y permite analizar cualquier estructura DOM. Consulte algunos de sus ejemplos y podría implementarlo fácilmente.

La idea es que estudie la estructura HTML de la página devuelta por Google y, en consecuencia, utilice la biblioteca DOM para analizar etiquetas específicas. Por lo que veo, las imágenes están organizadas como <ul> y <li> etiquetas, como:

<ul class="rg_ul" data-pg="1" data-cnt="6">
    <li class="rg_li" data-row="1" style="width:216px;height:162px"></li>
    <li class="rg_li" style="width:231px;height:162px"></li>
    <li class="rg_li" style="width:218px;height:162px"></li>
    <li class="rg_li" style="width:216px;height:162px"></li>
    <li class="rg_li" style="width:216px;height:162px"></li>
    <li class="rg_li" style="width:217px;height:162px"></li>
</ul>

Dentro de cada <li> etiqueta hay etiquetas adicionales, una de las cuales es <a> . Esta etiqueta parece tener 2 atributos, "imgrefurl" e "imgurl", que podrían brindarle la imagen que necesita. Cuál de estos 2 atributos que necesitas es para que lo explores.

Alternativamente, hay un <img> etiqueta dentro de <li> que tiene un atributo "src" que contiene el binario de la imagen real. Así que también puedes analizarlo. Tenga en cuenta que el binario es para la imagen que ve en la página de búsqueda y no para la imagen real.

Para algunos punteros a DOM, este método podría ser útil - http://www .php.net/manual/en/domelement.getelementsbytagname.php y http://www.php.net/manual/en/domelement. tieneatributo.php - para leer todo <li> etiquetas y luego analice las que usan la clase "rg_li".

Espero que lo anterior tenga sentido