- 1
- 이니스프리
- 조회 수 1114
import requests, json from datetime import datetime def get_now(): now = datetime.now().strftime('%Y%m%d%H%M') r = requests.get('https://www.nate.com/js/data/jsonLiveKeywordDataV1.js?v=' + now).content keyword_list = json.loads(r.decode('euc-kr')) result = [] for k in keyword_list: result.append(k[1]) return result
네이트 실시간 검색어 파싱과 관련하여 예전에 humit 님께서 파이썬으로 올려주셨고
( https://humit.tistory.com/304?category=847273 )
제가 PHP로 올렸던 적이 있는데요 ^^
https://studyforus.com/share/496236
그 때와는 네이트 측의 로직이 달라진 부분이 있어서 새로 올립니다 :)
랩퍼투혼님 포함 2명이 추천
일단 함수를 만들어서 하는데 쉽지 않아서, 혹시 괜찮으시면 한 번 봐주실수 있나 여쭤봅니다.
<?php
$r = getNateKeyword();
print_r($r);
function getNateKeyword() {
$url = "https://www.nate.com/js/data/jsonLiveKeywordDataV1.js?v=";
$is_post = false;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, $is_post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
$result = curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close ($ch);
$json = json_decode($result, true);
$nate = $json['euc-kr'];
for($i=0;$i<10;$i++) {
$keyword[$i] = $nate[$i][0];
}
return $keyword;
}
?>
이걸 실행하면
Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => [7] => [8] => [9] => )
이렇게만 나옵니다.
너무 안풀려서 그러는데, 제발 도움 좀 부탁드립니다.