suchen
HeimBackend-EntwicklungPHP-TutorialPHP erfasst [verwandte Suchbegriffe] von der Baidu-Suchergebnisseite und speichert sie

Der Inhalt dieses Artikels befasst sich mit dem Crawlen und Speichern der [verwandten Suchbegriffe] der Baidu-Suchergebnisseite. Jetzt kann ich ihn mit allen teilen, die ihn benötigen.

1. Baidu-Suchstichwort [Cichid Shell Company Transfer]

PHP erfasst [verwandte Suchbegriffe] von der Baidu-Suchergebnisseite und speichert sie

[Cichid Shell Company Transfer] Suchlink
https:/ / www.baidu.com/s?wd=%E7%9F%A5%E4%BA%86%E5%A3%B3%E5%85%AC%E5%8F%B8%E8%BD%AC%E8% AE %A9

PHP erfasst [verwandte Suchbegriffe] von der Baidu-Suchergebnisseite und speichert sie

**搜索结果部分源代码**

<p id="rs"><p class="tt">相关搜索</p><table cellpadding="0"><tbody><tr><th>
<a href="/s?wd=%E5%85%AC%E5%8F%B8%E8%BD%AC%E8%AE%A9%E6%B5%81%E7%A8%8B%E7%9F%A5%E4%BA%86%E5%A3%B3&rsp=0&f=1&oq=%E7%9F%A5%E4%BA%86%E5%A3%B3%E5%85%AC%E5%8F%B8%E8%BD%AC%E8%AE%A9&tn=baiduhome_pg&ie=utf-8&rsv_idx=2&rsv_pq=88c7804a0000c417&rsv_t=b5f3JkJIsj6Nkp61K%2BmmVGeev7UP95o1HSJTUoIS2xV4SsmZxvOoVf%2BAZaVoihB%2BT3bg&rqlang=cn&rsv_ers=xn0&rs_src=0&rsv_pq=88c7804a0000c417&rsv_t=b5f3JkJIsj6Nkp61K%2BmmVGeev7UP95o1HSJTUoIS2xV4SsmZxvOoVf%2BAZaVoihB%2BT3bg">公司转让流程知了壳</a></th>
.....
.....
<th><a href="/s?wd=%E7%9F%A5%E4%BA%86%E5%A3%B3%E5%85%AC%E5%8F%B8%E6%B3%A8%E5%86%8C&rsp=8&f=1&oq=%E7%9F%A5%E4%BA%86%E5%A3%B3%E5%85%AC%E5%8F%B8%E8%BD%AC%E8%AE%A9&tn=baiduhome_pg&ie=utf-8&rsv_idx=2&rsv_pq=88c7804a0000c417&rsv_t=b5f3JkJIsj6Nkp61K%2BmmVGeev7UP95o1HSJTUoIS2xV4SsmZxvOoVf%2BAZaVoihB%2BT3bg&rqlang=cn&rsv_ers=xn0&rs_src=0&rsv_pq=88c7804a0000c417&rsv_t=b5f3JkJIsj6Nkp61K%2BmmVGeev7UP95o1HSJTUoIS2xV4SsmZxvOoVf%2BAZaVoihB%2BT3bg">知了壳公司注册</a></th></tr></tbody></table></p>


2. Lokal erfassen und speichern

PHP erfasst [verwandte Suchbegriffe] von der Baidu-Suchergebnisseite und speichert sie

Quellcode

index.php------------

<form action="index.php" method="post">
<input name="q" type="text" />
<input type="submit" value="Get Keywords" />
</form>

<?php
header(&#39;Content-Type:text/html;charset=gbk&#39;);
class ComBaike{
    private $o_String=NULL;
    public function __construct(){
        include(&#39;cls.StringEx.php&#39;);
        $this->o_String=new StringEx();
    }
    public function getItem($word){
        $url = "http://www.baidu.com/s?wd=".$word;
        // 构造包头,模拟浏览器请求
        $header = array (
            "Host:www.baidu.com",
            "Content-Type:application/x-www-form-urlencoded",//post请求
            "Connection: keep-alive",
            &#39;Referer:http://www.baidu.com&#39;,
            &#39;User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; BIDUBrowser 2.6)&#39;
        );
        $ch = curl_init ();
        curl_setopt ( $ch, CURLOPT_URL, $url );
        curl_setopt ( $ch, CURLOPT_HTTPHEADER, $header );
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
        $content = curl_exec ( $ch );
        if ($content == FALSE) {
        echo "error:" . curl_error ( $ch );
        }
        curl_close ( $ch );
        //输出结果echo $content;
        $this->o_String->string=$content;
        $s_begin=&#39;<p id="rs">&#39;;
        $s_end=&#39;</p>&#39;;
        $summary=$this->o_String->getPart($s_begin,$s_end);
        $s_begin=&#39;<p class="tt">相关搜索</p><table cellpadding="0"><tr><th>&#39;;
        $s_end=&#39;</th></tr></table></p>&#39;;
        $content=$this->o_String->getPart($s_begin,$s_end);
        return $content;
    }
    public function __destruct(){
        unset($this->o_String);    
    }
}

if($_POST){

    $com = new ComBaike();
    $q = $_POST[&#39;q&#39;];
    $str = $com->getItem($q); //获取搜索内容
    $pat = &#39;/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/i&#39;;     
    preg_match_all($pat, $str, $m);    
    //print_r($m[4]); 链接文字
    $con = implode(",", $m[4]);
    //生成文件夹
    $dates = date("Ymd");
    $path="./Search/".$dates."/";
    if(!is_dir($path)){
        mkdir($path,0777,true); 
    }
    //生成文件
    $file = fopen($path.iconv("UTF-8","GBK",$q).".txt",&#39;w&#39;);
    if(fwrite($file,$con)){
        echo $con;
        echo &#39;<script>alert("success")</script>&#39;;
    }else{
        echo &#39;<script>alert("error")</script>&#39;;
    }
    fclose($file);

}

?>

cls.StringEx.php-------------

<?php
header(&#39;Content-Type: text/html; charset=UTF-8&#39;);
class StringEx{
    public $string=&#39;&#39;;
    public function __construct($string=&#39;&#39;){
        $this->string=$string;
    }
    public function pregGetPart($s_begin,$s_end){
        $s_begin==preg_quote($s_begin);
        $s_begin=str_replace(&#39;/&#39;,&#39;\/&#39;,$s_begin);
        $s_end=preg_quote($s_end);
        $s_end=str_replace(&#39;/&#39;,&#39;\/&#39;,$s_end);
        $pattern=&#39;/&#39;.$s_begin.&#39;(.*?)&#39;.$s_end.&#39;/&#39;;
        $result=preg_match($pattern,$this->string,$a_match);
        if(!$result){
            return $result;
        }else{
            return isset($a_match[1])?$a_match[1]:&#39;&#39;;
        }
    }
    public function strstrGetPart($s_begin,$s_end){
        $string=strstr($this->string,$s_begin);
        $string=strstr($string,$s_end,true);
        $string=str_replace($s_begin,&#39;&#39;,$string);
        $string=str_replace($s_end,&#39;&#39;,$string);
        return $string;
    }
    public function getPart($s_begin,$s_end){
        $result=$this->pregGetPart($s_begin,$s_end);
        if(!$result){
            $result=$this->strstrGetPart($s_begin,$s_end);
        }
        return $result;
    }
}
?>

Verwandte Empfehlungen:

PHP-Crawl-Seite verstümmelte Analyse

PHP-Crawls Vorlage für passende Webseiteninhalte




Das obige ist der detaillierte Inhalt vonPHP erfasst [verwandte Suchbegriffe] von der Baidu-Suchergebnisseite und speichert sie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Wie können Sie überprüfen, ob bereits eine PHP -Sitzung begonnen hat?Wie können Sie überprüfen, ob bereits eine PHP -Sitzung begonnen hat?Apr 30, 2025 am 12:20 AM

In PHP können Sie Session_Status () oder Session_id () verwenden, um zu überprüfen, ob die Sitzung gestartet wurde. 1) Verwenden Sie die Funktion Session_Status (). Wenn PHP_Session_Active zurückgegeben wird, wurde die Sitzung gestartet. 2) Verwenden Sie die Funktion Session_id (), wenn eine nicht leere Zeichenfolge zurückgegeben wird, die Sitzung gestartet wurde. Beide Methoden können den Sitzungszustand effektiv überprüfen, und die Auswahl der Verwendung von Methoden hängt von der PHP -Version und den persönlichen Einstellungen ab.

Beschreiben Sie ein Szenario, in dem die Verwendung von Sitzungen in einer Webanwendung unerlässlich ist.Beschreiben Sie ein Szenario, in dem die Verwendung von Sitzungen in einer Webanwendung unerlässlich ist.Apr 30, 2025 am 12:16 AM

SESSIONS AREVITALINWEBAPPLIKATIONEN, Besonders vor den Commerceplatformen

Wie können Sie den gleichzeitigen Sitzungszugriff in PHP verwalten?Wie können Sie den gleichzeitigen Sitzungszugriff in PHP verwalten?Apr 30, 2025 am 12:11 AM

Verwalten des gleichzeitigen Sitzungszugriffs in PHP kann mit den folgenden Methoden erfolgen: 1. Verwenden Sie die Datenbank, um Sitzungsdaten zu speichern, 2.. Diese Methoden tragen dazu bei, die Datenkonsistenz sicherzustellen und die Gleichzeitleistung zu verbessern.

Was sind die Einschränkungen bei der Verwendung von PHP -Sitzungen?Was sind die Einschränkungen bei der Verwendung von PHP -Sitzungen?Apr 30, 2025 am 12:04 AM

PhpSessionShaveseverallimitationen: 1) StorageConstraintScanleadtoperformanceISSues; 2) SecurityVulnerabilitieslikeSessionFixationAtpaSexist; 3) Skalierbarkeits-IschallengingDuetoServer-spezifisch; 4) SessionExpirationManbeproblematic;

Erklären Sie, wie sich das Lastausgleich auf das Sitzungsmanagement auswirkt und wie es angegangen werden soll.Erklären Sie, wie sich das Lastausgleich auf das Sitzungsmanagement auswirkt und wie es angegangen werden soll.Apr 29, 2025 am 12:42 AM

Lastausgleich beeinflusst das Sitzungsmanagement, kann jedoch durch Sitzungsreplikation, Sitzungsklebrigkeit und zentraler Sitzungsspeicher gelöst werden. 1. Sitzungsreplikationsdaten zwischen Servern. 2. Session Stickiness lenkt Benutzeranfragen auf denselben Server. 3. Zentraler Sitzungsspeicher verwendet unabhängige Server wie Redis, um Sitzungsdaten zu speichern, um die Datenfreigabe zu gewährleisten.

Erläutern Sie das Konzept der Sitzungsperrung.Erläutern Sie das Konzept der Sitzungsperrung.Apr 29, 2025 am 12:39 AM

SessionLockingIsatechniqueUTToensureUsers'SSessionSessionSeSexclusivetooneuseratatim.itiscrialtforpreventingDatacorruptionandSecurityBreachesinmulti-UserApplications

Gibt es Alternativen zu PHP -Sitzungen?Gibt es Alternativen zu PHP -Sitzungen?Apr 29, 2025 am 12:36 AM

Zu den Alternativen zu PHP-Sitzungen gehören Cookies, Token-basierte Authentifizierung, datenbankbasierte Sitzungen und Redis/Memcached. 1. Kookies verwalten Sitzungen, indem sie Daten über den Kunden speichern, was einfach, aber nur gering ist. 2. Altbasierte Authentifizierung verwendet Token, um Benutzer zu überprüfen, was sehr sicher ist, aber zusätzliche Logik erfordert. 3.Database-basiertssesses speichert Daten in der Datenbank, was eine gute Skalierbarkeit aufweist, die Leistung jedoch beeinflusst. V.

Definieren Sie den Begriff 'Sitzung' im Kontext von PHP.Definieren Sie den Begriff 'Sitzung' im Kontext von PHP.Apr 29, 2025 am 12:33 AM

Sessionhijacking bezieht sich auf einen Angreifer, der sich als Benutzer ausgibt, indem die SessionID des Benutzers angezeigt wird. Zu den Präventionsmethoden gehören: 1) Verschlüsseln der Kommunikation mit HTTPS; 2) Überprüfung der Quelle der SessionID; 3) mit einem sicheren Algorithmus zur Sitzung der Sitzung; 4) regelmäßig aktualisieren die SitzungID.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion