使用php實現簡單爬蟲(一種通用的爬蟲思想)

2021-08-28 14:04:56 字數 988 閱讀 3528

<?php

$str = '237059 成員

237059 成員

';preg_match_all('/[\s\s]*?237059 成員

237059 成員

對於這段**,可以理解為乙個很長的字串

$str =  '237059 成員

237059 成員

';

對這段字串,只需要進行正則匹配拿出你想要的,假如需要a標籤裡的href與內容

preg_match_all('/[\s\s]*?[\s\s]*?(.*?)<\/a>/',

$str,$match);

然後如果你不認識這段正規表示式還有preg_match_all函式,這裡筆者就簡單說下了,[\s\s]*?代表懶惰匹配任意字元,因為標籤之間會用空格符換行符,這裡又出現新問題什麼叫懶惰匹配,簡單來說就是匹配最少的內容。(.*?)代表非空字元,加括號的原因簡單來說就是括號裡的內容是你想要的,前面的[\s\s]*?匹配到的是一堆特殊符號,並沒有什麼作用,你不用把特殊符號記錄下來,所以不加括號。

最後列印結果,也就是$match陣列。

array

( [0] => array

([0] => [小組]  標籤內容1

[1] => [小組]  標籤內容2

)[1] => array

([0] => 鏈結內容1

[1] => 鏈結內容2

)[2] => array

([0] => 標籤內容1

[1] => 標籤內容2

))

根據這個陣列,需要什麼自己遍歷陣列,然後拼裝sql語句,插入到自己的資料庫中即可。但是插入過程中可能會有一些單引號雙引號搗亂,所以你用str_replace()把他們替換掉,或者加轉義符號。

一種通用CMakeLists模板

1.cmake verson,指定cmake版本 cmake minimum required version 3.16 2.project name,指定專案的名稱,一般和專案的資料夾名稱對應 project demo 3.head file path,頭檔案目錄 include director...

tomcat 一種簡單使用方式!

使用myeclipse時,總是得佈署專案到tomcat上,太過耗費時間。近來,知道了乙個簡單的方式,可以避免這種情況!在tomcat路徑下,有乙個apache tomcat 6.0.29 conf catalina localhost,在此包下新建乙個xml,並新增一下 其中,path demo 是...

Makefile的一種通用寫法

管理linux環境下的c c 大型專案,如果有乙個智慧型的build system會起到事半功倍的效果,本文描述linux環境下大型工程專案子目錄makefile的一種通用寫法,使用該方法,當該子目錄內的檔案有增刪時無需對makefile進行改動,可以說相當的智慧型。下面先貼 為減小篇幅,一些非關鍵...