質問編集履歴
1
コードの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -21,8 +21,45 @@
|
|
21
21
|
---
|
22
22
|
正規表現はこのようにしています。
|
23
23
|
```
|
24
|
-
preg_match_all('/src\s*=\s*[\
|
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を取得することが出来ますか?
|