过期域名预定抢注

 找回密碼
 免费注册

從0開始學採集------中級篇:使用Curl抓取網頁內容

 火... [複製鏈接]
發表於 2014-10-30 11:10:59 | 顯示全部樓層
$matches是一個二維數組?                                    
0 O+ S  ]0 u: Z9 U
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2014-10-30 11:20:53 | 顯示全部樓層
xx19941215 發表於 2014-10-30 10:55 ' R) w7 _6 b% c, A
$i

0 {# x' w4 z1 w- {9 ]0 N# N你的兩個回帖,理解都是正確的。/ D. [6 E& {# \( M8 e. q
* x" x: {/ r: l  t
1.count() 函數是計算數組中的單元數目或對像中的屬性個數。用來計算總數。  e3 e. u) ?1 T$ Y
, }) G2 V6 g* u
2.$matches是一個二維數組。4 p. O8 K/ T- K( s3 Y* D& f: b0 s

1 ~* ^2 s+ b" T' |
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 11:49:20 | 顯示全部樓層
kevinmy 發表於 2014-10-30 11:20 + O  v4 y' m# |7 Q
你的兩個回帖,理解都是正確的。, F3 \: Q& J: G( g

2 t& I+ d! D7 n8 v) k. }- l7 u1.count() 函數是計算數組中的單元數目或對像中的屬性個數。用來計算總 ...

! u0 y- {5 R$ p+ G+ H% T- @* Z保存的為啥是個二維數組呢、?
8 Q. e/ T% x; T9 r; A6 M4 K+ @9 o; `4 u, o7 s
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 12:42:21 | 顯示全部樓層
感謝分享                                   8 `8 x# V) k. G
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 13:16:02 | 顯示全部樓層
[mw_shl_code=php,true]<?php - g; U4 L$ H. l$ O+ J- Z
set_time_limit(0);//設置程序執行時間 5 ]8 H" B6 [7 i( O$ }. W
header("Content-Type: text/html; charset= utf-8"); //設置頁面的編碼,不設置會亂碼
, e$ E" n( V* q( d
4 v$ A8 s" x8 C  i- T1 y$url="http://www.luosuo.net/old/forum-4-1.html"; 4 Y6 c$ C6 z. |9 {
$ch = curl_init($url);//初始化 , Y( R" x6 V  k7 y: ]2 F' v
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//返回的內容我們是作為變量儲存, 而不輸出,所以這裡選1. # M, `7 I9 c  `4 X1 s$ H
$contents = curl_exec($ch);// 運行cURL,請求網頁
6 ^+ j: W/ g5 C: h8 @preg_match_all('{<a href="([^"]+)"  target="_blank">(.*)</a>}',$contents,$matches);//正則匹配想要的內容
+ U1 u, d$ O8 b7 vcurl_close($ch);// 關閉URL請求
4 i4 w+ h! p+ @' F' ~print_r($matches);
  n# S$ ]2 c3 Jfor ($i=0;$i<count($matches[1]);$i++)//for循環結構很常用,這裡的作用是循環記錄總數的的次數,每次循環中可以任意處理採集到的內容 # M2 G( L2 f7 d" n
{   t7 h/ @7 Y, o! b+ Z
$title = $matches[2][$i];
% L! f& j( u2 ~1 e$geturl = $matches[1][$i];
9 e# k$ A' j5 ^' kecho "我要的標題是:" . $title. "<br/>" . "對應的網址是:" . $geturl . "<br/><br/><br/>";
; M, c# X% _& F$ f% {} % k  d, ?7 d4 F  b8 a; R3 l; ?
?>[/mw_shl_code]: ?3 b4 u0 @, l! v8 w

# s( W2 T. {5 C這是我測試的代碼,怎麼出現了這個) S- i& ]/ T/ _/ z, f* }" f, T4 C
2014-10-30_131545.jpg
9 s: ^/ h$ K& d' C$ x% M& F7 E
- K, R, m. q$ V* [, v$ t
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2014-10-30 15:11:50 | 顯示全部樓層
xx19941215 發表於 2014-10-30 13:16 * I/ l$ f  D0 B! ^$ \
這是我測試的代碼,怎麼出現了這個

) _$ B! l+ L! h5 X: p6 f6 ?看了你貼出的代碼,出現上面那大段是因為你自己在代碼中加了一句:print_r($matches);把數組的結構打印出來了,直接在瀏覽器上看會比較亂,你點擊鼠標右鍵選擇查看源代碼,在那裡面數組的結構清晰,你就能看出來,輸出的是個二維數組了。
; o8 G: ^1 W- H) N: ^
3 e$ r( h0 D* V. A
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 16:09:37 | 顯示全部樓層
kevinmy 發表於 2014-10-30 15:11
% Y, j* B& j% V/ t0 k7 Y( m看了你貼出的代碼,出現上面那大段是因為你自己在代碼中加了一句:print_r($matches);把數組的結構打印出 ...
8 ^4 ?6 w. W$ u9 z7 J/ B
那您幫忙看看這個http://ygcf.sinaapp.com/ceshi.php + i3 |! C0 T8 }' F

$ U1 h, k6 C/ c7 G. E/ K; ^$ p怎麼用for打印出像表格那樣的格式呢?/ e5 K/ z/ w( n

9 k6 P+ Y5 s" d" P& a
* x) ~/ Z7 u5 Z" W" P2 w0 T" ?& h' p6 w2 W$ k2 E
1 [, ^# M& I0 l1 O7 H
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 16:58:45 | 顯示全部樓層
目前為止還只停留在火車頭的階段,樓主高手啊
0 U* ]! U* j# n! o
回復 给力 爆菊

使用道具 舉報

發表於 2014-10-30 17:30:13 | 顯示全部樓層
會寫代碼的話就很簡單啦6 D3 N& _5 {  q
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2014-10-30 20:29:46 | 顯示全部樓層
xx19941215 發表於 2014-10-30 16:09 ; ~. S" H* e/ w) h
那您幫忙看看這個http://ygcf.sinaapp.com/ceshi.php
+ ?- W0 t% e' U; v
: z0 G2 K* j$ x3 l- z$ q, L怎麼用for打印出像表格那樣的格式呢?

$ `  W+ ~6 c/ M. ?5 y給你個思路,用div+css可以實現,如果暫時不會,也可以先使用HTML的<table> 標籤來實現功能。1 {# _+ Q/ o5 o0 U( R/ C
回復 给力 爆菊

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

过期高净值品牌域名预定抢注

點基

GMT+8, 2026-8-20 17:21

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表