sql >> Databáze >  >> RDS >> Mysql

Uložit adresu URL obrázku z vyhledávání Google do MySQL

Navrhoval bych, abyste použili PHP Knihovnu DOM . Je velmi výkonný a umožňuje analyzovat jakoukoli strukturu DOM. Podívejte se na některé z jeho příkladů a můžete jej snadno implementovat.

Cílem je prostudovat strukturu HTML stránky vrácené Googlem a podle toho použít knihovnu DOM pro analýzu konkrétních značek. Z toho, co vidím, jsou obrázky uspořádány jako <ul> a <li> tagy, jako:

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

V rámci každého <li> existují další značky, z nichž jedna je <a> . Zdá se, že tato značka má 2 atributy - "imgrefurl" a "imgurl" - které vám mohou poskytnout obrázek, který potřebujete. Který z těchto 2 atributů potřebujete, musíte prozkoumat.

Případně existuje <img> tag v rámci <li> který má atribut "src" obsahující skutečný binární obrázek. Můžete to tedy analyzovat také. Vezměte prosím na vědomí, že binární kód je pro obrázek, který vidíte na stránce vyhledávání, nikoli pro skutečný obrázek.

Pro některé ukazatele na DOM může být tato metoda užitečná - http://www .php.net/manual/en/domelement.getelementsbytagname.php a http://www.php.net/manual/en/domelement. hasattribute.php - ke čtení všech <li> tagy a poté analyzujte ty, které používají třídu "rg_li".

Doufám, že výše uvedené dává smysl



  1. Použití pysparku pro připojení k PostgreSQL

  2. vyberte součet množství ze 2 tabulek

  3. Oznámení ClusterControl 1.4.1 - vydání ProxySQL

  4. Spusťte dotaz s LIMIT/OFFSET a získejte také celkový počet řádků