[請益] 抓網頁中的圖片網址

看板PHP作者 (經驗使人成長)時間11年前 (2014/11/13 11:46), 編輯推噓6(6025)
留言31則, 7人參與, 最新討論串1/1
<? $text=file_get_contents('https://store.line.me/themeshop/showcase/zh-Hant'); eregi('<ul class="mdMN02Ul">(.*)<!--/MdMN02ItemList-->',$text,$match); preg_match_all('/<.img.*?src=\s*?[\'"](.+)[\'"].*?>/i',$match[0],$match2); echo $match2[0]; ?> 我先處理了一次原始碼分析,在要把原始碼中所有圖片中的網址都印出 <img src="" rel="nofollow">http://123.jpg"> <img src="" rel="nofollow">http://456.jpg"> 我只要 http://123.jpg
http://456.jpg
後面的我能用 substr 去取理,但是前面的 $match2 出不來... 是哪邊出了錯呢? 麻煩前輩指導~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.246.133.164 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1415850418.A.5DA.html

11/13 12:12, , 1F
preg_match_all("|img src=\"(.*)\"|U", $match[1], $ma
11/13 12:12, 1F

11/13 12:12, , 2F
tch2);
11/13 12:12, 2F

11/13 15:16, , 3F
我會用 PHP Simple HTML DOM Parser
11/13 15:16, 3F

11/13 15:17, , 4F
直接將頁面Parse到一個Object 後面的處理就跟你用
11/13 15:17, 4F

11/13 15:17, , 5F
JQuery的Selector差不多
11/13 15:17, 5F

11/14 06:44, , 6F
to J : 我 echo 出 $match2[0] 一樣只會出現 array
11/14 06:44, 6F

11/14 06:45, , 7F
這個意思應該是陣列沒內容或抓到?
11/14 06:45, 7F

11/14 06:46, , 8F
to r : 謝謝教導,但本人是學不到三天的初學
11/14 06:46, 8F

11/14 06:47, , 9F
我會再去研究這個方法的,我用的空間是 heliohost
11/14 06:47, 9F

11/14 06:47, , 10F
希望有支援這指令,因為我連 session_start 都不能
11/14 06:47, 10F

11/14 10:42, , 11F
你可以先用print_r($match2)看看整個Array的內容
11/14 10:42, 11F

11/14 10:44, , 12F
因為你用preg_match_all得到的結果應該是每個匹配
11/14 10:44, 12F

11/14 10:44, , 13F
的結果是一個Array然後放在match2這個Array裏面
11/14 10:44, 13F

11/14 10:45, , 14F
所以你$match2[0]只是指向第一個結果 並沒有指向第
11/14 10:45, 14F

11/14 10:46, , 15F
一個姞果的內容 以以上的正則 應該你想要的結果會放
11/14 10:46, 15F

11/14 10:47, , 16F
在$match2[X][1]之中 X取決於匹配的結果 由0開始
11/14 10:47, 16F

11/14 11:41, , 17F
^數量
11/14 11:41, 17F

11/14 12:18, , 18F
哪裡有preg相關語法教學?...php我一直沒學會的就是這部
11/14 12:18, 18F

11/14 12:19, , 19F
...\"(.*)\"|U"...這個對我來說是外星人語言
11/14 12:19, 19F

11/14 13:50, , 20F
google 正規表示式,這個跟php無關,很多語言共通
11/14 13:50, 20F

11/14 13:51, , 21F
也有專版可以討論
11/14 13:51, 21F

11/14 19:26, , 22F
基本部份很直覺的,先不要學look-ahead就好 :D
11/14 19:26, 22F

11/14 19:29, , 23F
http://www.regexr.com/ 很實用,可以邊測邊寫
11/14 19:29, 23F

11/14 19:30, , 24F
還有個比較老式的 http://www.regextester.com/
11/14 19:30, 24F

11/14 20:32, , 25F
還有上面我提到的這個是library 你只需要在他的網
11/14 20:32, 25F

11/14 20:33, , 26F
站下載然後上傳到同目錄require就好 不過確實在學
11/14 20:33, 26F

11/14 20:33, , 27F
習階段就一步一步來吧 但這方法以後可以用到
11/14 20:33, 27F

11/14 20:34, , 28F
SIMPLE HTML DOM我真的覺得還蠻好用的 尤其有寫過
11/14 20:34, 28F

11/14 20:34, , 29F
前端程式(JQuery)的話 非常好上手
11/14 20:34, 29F

11/14 23:58, , 30F
我記得某神人有篇文章 http://goo.gl/yrlUut
11/14 23:58, 30F

11/14 23:59, , 31F
其中提到 http://goo.gl/42GMxg 剛好就是解答
11/14 23:59, 31F
文章代碼(AID): #1KP2coNQ (PHP)
文章代碼(AID): #1KP2coNQ (PHP)