Mysql
 sql >> Base de données >  >> RDS >> Mysql

Enregistrer l'URL de l'image de la recherche Google dans MySQL

Je vous suggère d'utiliser la bibliothèque DOM de PHP . Il est très puissant et permet d'analyser n'importe quelle structure DOM. Reportez-vous à certains de ses exemples et vous pourrez l'implémenter facilement.

L'idée est d'étudier la structure HTML de la page renvoyée par Google et d'utiliser en conséquence la bibliothèque DOM pour analyser des balises spécifiques. D'après ce que je vois, les images sont organisées comme <ul> et <li> balises, comme :

<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>

Dans chaque <li> balise il y a des balises supplémentaires, dont l'une est <a> . Cette balise semble avoir 2 attributs - "imgrefurl" et "imgurl" - qui pourraient vous donner l'image dont vous avez besoin. Lequel de ces 2 attributs dont vous avez besoin est à explorer.

Alternativement, il y a un <img> balise dans <li> qui a un attribut "src" contenant le binaire de l'image réelle. Vous pouvez donc également l'analyser. Veuillez noter que le binaire est pour l'image que vous voyez sur la page de recherche et non pour l'image réelle.

Pour certains pointeurs vers DOM, cette méthode peut être utile - http://www .php.net/manual/en/domelement.getelementsbytagname.php et http://www.php.net/manual/en/domelement. hasattribute.php - pour lire tous les <li> balises, puis analysez celles qui utilisent la classe "rg_li".

J'espère que ce qui précède a du sens