PHP만 사용하여 Google, Bing과 같은 웹 검색 엔진에서 이미지를 검색할 수 있는 간단한 코드입니다.
이 프로젝트 복제
/var/www
또는 이와 유사한 Apache 또는 Nginx 공용 폴더 내에 콘텐츠를 복사하세요.
브라우저를여세요
이 코드의 마법은 search()
라는 메소드가 있는 객체 지향 파일인 file services/ImageBySearchEngine.php
에서 발생합니다.
<?php$data = [];try{require_once "services/ImageBySearchEngine.php"; $query = "귀여운 새끼 고양이"; //검색하려는 쿼리$limit = 10; //보여주고 싶은 이미지 개수$search_engine = "google"; // 검색 엔진 키입니다. "bing"도 사용할 수 있습니다. $imageBySearchEngine = new ImageBySearchEngine();$images = $imageBySearchEngine->search( $query, $limit, $search_engine ); if(count($images) === 0)throw new Exception("주어진 쿼리에서 이미지를 찾을 수 없습니다."); $data["images"] = $이미지; } catch (예외 $e){$data["message"] = $e->getMessage(); }
다음과 같은 배열을 받게 됩니다.
배열(10) { [0]=>배열(1) { ["우리"] => 문자열(121) "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSnFm8xIu_nPgVZ7Xw-w5wClwiBExSJDeMNANRLeu8hmy7xLQgXuaY8Yp4tqcc&s"} [1]=>배열(1) { ["우리"]=> 문자열(121) "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRDIa6b2ZyHQSGpBBVBi3Sf50AEaUhCM-CJyAI4qTm4yvsvvUrHDfw4N9LBCQQ&s"} [2]=>배열(1) { ["우리"]=> 문자열(120) "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQgYZXBCpD4K5WjwpiK24HcPewCa9WigE08GMcY7Hf1lPpk1ecJwfiVgZRJQA&s"} }
또는 원하는 경우 다음과 같은 JSON을 사용하세요.
{ "이미지":[ { "uri": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSnFm8xIu_nPgVZ7Xw-w5wClwiBExSJDeMNANRLeu8hmy7xLQgXuaY8Yp4tqcc&s"}, { "uri": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRDIa6b2ZyHQSGpBBVBi3Sf50AEaUhCM-CJyAI4qTm4yvsvvUrHDfw4N9LBCQQ&s"}, { "uri": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQgYZXBCpD4K5WjwpiK24HcPewCa9WigE08GMcY7Hf1lPpk1ecJwfiVgZRJQA&s"} ] }
당신이 이 도구를 사용하는 방식은 내 책임이 아닙니다.
나는 PHP를 사용하여 크롤러를 구현하는 방법을 보여주기 위해 대학 작업을 위해 이 간단한 스크립트를 만들었습니다.
저는 Google 이미지와 Bing 이미지를 사용하는 것을 선호합니다. 왜냐하면 DOM을 사용하여 페이지의 요소를 조작하는 방법에 대한 좋은 예이기 때문입니다.
그러나 Google Maps, Bing Images, Instagram, Facebook 등과 같은 다른 사이트를 사용할 수도 있습니다.
Google 서비스 약관 및 Microsoft 서비스 계약에서 해당 정책 및 약관에 대해 자세히 설명할 수 있습니다.
윤리적인 개발자가 되자!
패치 및 추가 사항 제출에 대해서는 각 프로젝트의 스타일 및 기여 지침을 참조하세요. 일반적으로 우리는 "포크 앤 풀(fork-and-pull)" Git 워크플로를 따릅니다.
GitHub에서 저장소를 포크하세요.
프로젝트를 자신의 머신에 복제하세요.
자신의 브랜치에 변경 사항 커밋
작업을 다시 포크로 밀어 올리세요
변경 사항을 검토할 수 있도록 Pull 요청을 제출하세요.
참고: 끌어오기 요청을 하기 전에 "업스트림"의 최신 항목을 병합하세요!