質問するログイン新規登録

質問編集履歴

1

コードの追加

2017/08/04 01:07

投稿

Nippun
Nippun

スコア1147

title CHANGED
File without changes
body CHANGED
@@ -21,8 +21,45 @@
21
21
  ---
22
22
  正規表現はこのようにしています。
23
23
  ```
24
- preg_match_all('/src\s*=\s*[\"|\'](.*?(\.jpg|\.jpeg|\.gif|\.png))"/i', $htmlSource, $res);
24
+ preg_match_all('/[src|srcset]\s*=\s*[\'|\"]\s*(.*?(\.jpg|\.jpeg|\.gif|\.png))/i', $htmlSource, $res);
25
25
  コード
26
26
  ```
27
+ 具体的なコード
28
+ ---
27
29
 
30
+ ```<?php
31
+
32
+ $URL = "http://web.mit.edu";
33
+
34
+ image($URL);
35
+ echo "\n";
36
+
37
+ function image($targetUrl ){
38
+
39
+ // get html resourse
40
+ $htmlSource = @file_get_contents( $targetUrl );
41
+
42
+ if ( $htmlSource ){
43
+ // image file
44
+ preg_match_all('/[src|srcset]\s*=\s*[\'|\"]\s*(.*?(\.jpg|\.jpeg|\.gif|\.png))/i', $htmlSource, $res);
45
+
46
+ if ( isset( $res[1] ) ){
47
+ foreach( $res[1] as $targetImgUrl ) {
48
+ // file names
49
+ $fileNameTmp = explode( '/', $targetImgUrl);
50
+ $fileNameTmp = array_reverse( $fileNameTmp);
51
+ $fileName = $fileNameTmp[0];
52
+
53
+ // save image
54
+ $imgData = @file_get_contents($targetImgUrl);
55
+ if ($imgData){
56
+ @file_put_contents(image.$fileName, $imgData);
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ ?>
63
+ コード
64
+ ```
28
65
  どのようにすればhttp及びスラッシュから始まるsrcを取得することが出来ますか?