sql >> Database >  >> RDS >> Mysql

Afbeeldings-URL van Google Zoeken opslaan in MySQL

Ik raad je aan om PHP's DOM-bibliotheek te gebruiken. . Het is zeer krachtig en maakt het mogelijk om elke DOM-structuur te ontleden. Verwijs naar enkele van zijn voorbeelden en je zou het gemakkelijk kunnen implementeren.

Het idee is dat je de HTML-structuur bestudeert van de pagina die door Google wordt geretourneerd en dienovereenkomstig de DOM-bibliotheek gebruikt voor het ontleden van specifieke tags. Van wat ik zie, zijn de afbeeldingen georganiseerd als <ul> en <li> tags, zoals:

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

Binnen elke <li> tag zijn er extra tags, waaronder <a> . Deze tag lijkt 2 attributen te hebben - "imgrefurl" en "imgurl" - die je misschien de afbeelding geven die je nodig hebt. Welke van deze 2 eigenschappen je nodig hebt, moet je zelf ontdekken.

Als alternatief is er een <img> tag binnen <li> dat een "src" -attribuut heeft dat het daadwerkelijke binaire bestand van de afbeelding bevat. Dus je kunt het ook ontleden. Houd er rekening mee dat het binaire bestand is voor de afbeelding die u op de zoekpagina ziet en niet voor de daadwerkelijke afbeelding.

Voor sommige verwijzingen naar DOM kan deze methode nuttig zijn - http://www .php.net/manual/en/domelement.getelementsbytagname.php en http://www.php.net/manual/en/domelement. hasattribute.php - om alle <li> . te lezen tags en vervolgens ontleden voor degenen die class "rg_li" gebruiken.

Ik hoop dat het bovenstaande logisch is



  1. Hoe maak je een ID aan met AUTO_INCREMENT op Oracle?

  2. mySQL - Tafelvergrendeling versus rijvergrendeling

  3. Oracle ODP.Net en EF CodeFirst - SaveChanges-fout

  4. Hoe hiaten in de sequentiële nummering in mysql te vinden?