2012-02-19 2 views
2

JavaScript (및 jQuery)를 사용하여 9GAG의 이미지 만 표시하고 한 번에 약 5 개씩로드하고 아래로 스크롤 할 때 더 많이로드하는 웹 페이지를 만드는 방법이 있습니까? 다른 쓰레기를 모두로드하지 않고도 웹 사이트에 쉽게 액세스 할 수 있도록 노력하고 있습니다.9GAG에서 이미지 가져 오기

감사합니다.

+6

예있다. 너 뭐 해봤 니? – Evert

+1

글쎄, 사람들이 나에게 답에 대한 부정적인 표를 던지기 때문에 나는 9GAG의 [tos] (http://9gag.com/tos)를보고 당신이하려는 일이 허락되는지를 알아내는 것이 좋습니다. 당신은 아마도 자신의 콘텐츠에 링크해야 할 것입니다 ... – elclanrs

+0

@Evert JavaScript를 잘 유창하게 사용하지 않아서 많은 노력을하지 못했습니다. 그래서 제가 묻는 것입니다. elclarns 나는 그것이 허용된다고 믿는다. 당신은 무엇에 대해 부정 투표를 했습니까? – n0shadow

답변

9

InfiniGAG을 살펴보십시오.

http://infinigag.k3min.eu/trending

결과 :

{ 
    "status": 200, 
    "message": "OK", 
    "data": [ 
     { 
      "id": "EyVtjpq", 
      "caption": "Example", 
      "images": { 
       "small": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_220x145.jpg", 
       "cover": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460c.jpg", 
       "normal": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460s.jpg", 
       "large": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_700b.jpg" 
      }, 
      "media": { 
       "mp4": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460sv.mp4", 
       "webm": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460svwm.webm" 
      }, 
      "link": "http:\/\/9gag.com\/gag\/EyVtjpq", 
      "votes": { 
       "count": 0 
      }, 
      "comments": { 
       "count": 0 
      } 
     }, 
     ... 
    ], 
    "paging": { 
     "next": "V8eFpqG" 
    } 
} 
+0

페이지가 존재하지 않음 :-( – Natxet

+2

[github.com/k3min/InfiniGAG](https://github.com/k3min/InfiniGAG) – k3min

+0

이 API의 소스 코드를 볼 수 있습니까? – brumbrum

0

해당 웹 사이트에 이미지 나 경로를 반환하는 API가없는 경우이를 위해 서버 측 기술이 필요합니다.

+0

Android 용 InfiniGap과 같은 앱으로 어떻게 이러한 이미지를 가져올 수 있습니까? 내가 아는 한, 그들은 공식적으로 인증되지 않았습니다. – n0shadow

+0

내가 말했듯이, 앱이 API를 제공한다면 API를 소비하고 이미지 목록을 제공하기가 쉽습니다. 나는 그것이 있는지 없는지 모른다. –

3

네, 가능합니다 ... 나는 PHP를 사용하는 것이 좋습니다. 불행히도 자바 스크립트만으로는 이것을 할 수 없을 것입니다. 왜냐하면 "샌드 박싱"때문에 자바 스크립트가 생성 한 URL에 저장된 것들에만 접근 할 수 있기 때문입니다.

아래에서 수행 할 수 있습니다. 이 규범으로 몇 가지 조언이 제공됩니다 : TOS는 규칙 일 뿐이며이를 사용할 때 관련된 도덕적/윤리적 고려 사항을 이해합니다. 9gag는 광고에 돈을 벌 수 있도록 이러한 이미지를 수집하는 작업을 수행했습니다. 그들은 대역폭 (그리고 클라우드 프론트 CDN)을 지불합니다. 이 코드를 사용하여 경쟁 제품을 만들거나 광고를 일주 항주로 경유한다면 귀하는 도용 당합니다. 나는이 정보가 자유롭고 사람들은이 PHP 코드로부터 배울 수 있어야한다고 생각하기 때문에 이것을 게시한다.

$html = file_get_contents("http://www.9gag.com"); 
preg_match('|http://d24w6bsrhbeh9d\.cloudfront\.net/photo/.+?\.jpg|',$html,$matches); 
//now matches holds all the image urls which you can print to javascript/html and show 

행운을 빈다.

+0

불행히도이 프로젝트에서는 PHP를 사용할 수 없습니다. 그것 없이는 이것을 할 수있는 방법이 없을까요? – n0shadow

+0

잘 서버 측 언어가 필요합니다. 그것이 정말로 당신을위한 것이라면, 셸이나 로컬 컴퓨터에서 실행될 수있는 일이지만 JavaScript는 이미지를 가져올 수 없습니다. – hackartist

+0

내가 필요한 것. 나는 API를 제공하는 것이 좋은 습관이라고 생각한다. 사람들은 어쨌든 그들이 원하는 것을 취할 것이다. API를 만드는 것은 모바일 앱 제조업체와 같은 제 3 자에 대한 선의를 보여줍니다. –