使用curl(循环)从页面中抓取所有图像URL

时间:2015-02-15 15:34:51

标签: php regex loops curl

我创建了一个简单的脚本来从页面中获取图像URL。脚本执行此操作,但只抓取第一个URL,关于如何循环这个的一些方向将不胜感激。

<html>
<head>
	<title>RUscraper</title>
</head>
<body>
	<form method="get">
		MemberID: 
		<input type="text" name="memberIDsubmit" />
		<input type="submit" value="Scrape" />
	</form>
	<?php
		if ($_GET["memberIDsubmit"]) {
			
			function scrape() {
				$memberID = $_GET["memberIDsubmit"];
				echo $memberID;

				$curl = curl_init("http://domain.com/profile/?Id=$memberID");
				curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);

				$page = curl_exec($curl);

				curl_close($curl);	

				$regex = "/https?:\/\/[^ ]+?(?:\.jpg)/";
				preg_match($regex, $page, $output);			

			    echo "<pre>";
			    var_dump($output);
			    echo $page;
			    echo "</pre>";
		    }	

	    	scrape();
		}
	?>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

使用带有-p选项而不是curl的wget来获取页面及其所有元素(例如图像,css文件,javascript文件等):

wget -p http://www.example.com/path/to/page.html