Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Bilder erfassen

PHP-Bilder erfassen

不言
不言Original
2018-04-14 11:58:261955Durchsuche

Dieser Artikel stellt hauptsächlich PHP zum Erfassen von Bildern vor, was einen gewissen Referenzwert hat. Jetzt können Freunde in Not darauf verweisen

function actionGetimg(){
		ob_end_clean();
		ob_implicit_flush(1);
		//13050
		for($a=1;$a<13074;$a++){
			echo $a.&#39;+&#39;;
			echo &#39;<br/>&#39;;
			$url = "http://www.jtyxzz.com/portal.php?mod=view&aid=".$a;
			$arr = $this->file_from_url_content($url);
			$regex4 = "/<img src=\"data\/[\s\S]*?\">/";//标题
			preg_match_all($regex4, $arr, $result1);
			//var_dump($result1);
			//var_dump(empty($result1[0]));exit;
			if (!empty($result1[0])) {
				foreach ($result1 as $key => $val) {
					$first = str_replace(&#39;<img src="&#39;, &#39;&#39;, $val);
					$second = str_replace(&#39;">&#39;, &#39;&#39;, $first);
				}
				//dump($second);exit;
				foreach ($second as $key => $val) {
					//var_dump($val);
					//echo &#39;<br/>&#39;;
					$zuihou=strrpos($val,&#39;/&#39;);
					$mulu=substr($val,0,$zuihou);
					//$ming=substr($val,$zuihou+1);
					//dump($ming);exit;
					if(is_dir($mulu)){
						//echo &#39;cunzai&#39;;
					}else{//目录不存在创建目录
						//echo &#39;bucunzai&#39;;exit;
						mkdir($mulu,0777,true);
					}


					$image =@file_get_contents(&#39;http://www.jtyxzz.com/&#39; . $val);
					if($image){
						file_put_contents($val, $image);
						//echo $val;exit;
					}else{
						file_put_contents(&#39;images/diushi.txt&#39;,$a.&#39;/&#39;.$val.&#39;图片丢失<br/>&#39;,FILE_APPEND);
                        echo $a.&#39;/&#39;.$val.&#39;图片丢失&#39;;
						echo &#39;<br/>&#39;;
					}


				}
			}else {
                echo $a.&#39;no img or no permission&#39;;
				echo &#39;<br/>&#39;;
			}
			$sleep=$a/100;
			if(is_int($sleep)){
				echo $sleep;
				echo &#39;<br/>&#39;;
				echo $a;
				sleep(rand(40,50));
			}
		}
		echo &#39;图片采集完毕&#39;;
		//var_dump($second);exit;
       exit;
	}

/**
	 * 异步将远程链接上的内容
	 * @param unknown $url 远程地址
	 * @param unknown $saveName 保存在服务器上的文件名
	 * @param unknown $path 保存路径
	 * @return boolean
	 */
	function file_from_url_content($url) {
		// 设置运行时间为无限制
		set_time_limit ( 0 );
		$url = trim ( $url );
		$curl = curl_init ();
		// 设置你需要抓取的URL
		curl_setopt ( $curl, CURLOPT_URL, $url );
		// 设置header
		curl_setopt ( $curl, CURLOPT_HEADER, 0 );
		// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
		curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 );
		// 运行cURL,请求网页
		$file = curl_exec ( $curl );
		// 关闭URL请求
		curl_close ( $curl );
		return $file;
	}

Verwandte Empfehlungen:

Beispiel für die Verwendung von PHP zum Crawlen von Baidu Reading

PHP-Crawling-Seiten-Verstümmelungsanalyse

Das obige ist der detaillierte Inhalt vonPHP-Bilder erfassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP-Online-SprachsyntheseNächster Artikel:PHP-Online-Sprachsynthese