api_kof
This is an old revision of the document!
searchPeopleList.xml
api_kof.rs
library(XML)
library(httr)
library(tidyr)
# https://kobis.or.kr/kobisopenapi/homepg/main/main.do
searchPeople <- "https://kobis.or.kr/kobisopenapi/webservice/rest/people/searchPeopleList.xml"
KEY <- 'your_keys_here'
name <- "Christian Bale"
name <- iconv(name, to="utf8")
url <-URLencode(iconv(searchPeople, to="utf8"))
url
spRes <- GET(url, query= list("key" = KEY, "peopleNm"= name))
spRes
spParsed <- xmlParse(spRes)
spParsed
xmlPeople <- getNodeSet(spParsed, "//people")
xmlPeople
xmlFilm <- getNodeSet(spParsed, "//people/filmoNames")
xmlFilm
filmCh <- xmlToDataFrame(xmlFilm, stringsAsFactors = F)
filmCh
View(filmCh)
library(tidyr)
library(tidyverse)
fs <- mutate(filmCh, text = strsplit(as.character(text), "\\|"))
fs <- unnest(fs, text)
str(fs)
data.frame(fs)
fs[1,]
api_kof.ro
> library(XML)
> library(httr)
> library(tidyr)
>
> # https://kobis.or.kr/kobisopenapi/homepg/main/main.do
>
> searchPeople <- "https://kobis.or.kr/kobisopenapi/webservice/rest/people/searchPeopleList.xml"
> KEY <- 'your_key_here'
> name <- "Christian Bale"
> name <- iconv(name, to="utf8")
> url <-URLencode(iconv(searchPeople, to="utf8"))
> url
[1] "https://kobis.or.kr/kobisopenapi/webservice/rest/people/searchPeopleList.xml"
>
> spRes <- GET(url, query= list("key" = KEY, "peopleNm"= name))
> spRes
Response [https://kobis.or.kr/kobisopenapi/webservice/rest/people/searchPeopleList.xml?key=your_key_here&peopleNm=Christian%20Bale]
Date: 2026-06-01 03:26
Status: 200
Content-Type: application/xml;charset=utf-8
Size: 935 B
<BINARY BODY>
> spParsed <- xmlParse(spRes)
> spParsed
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<peopleListResult>
<totCnt>1</totCnt>
<peopleList>
<people>
<peopleCd>10077325</peopleCd>
<peopleNm>크리스찬 베일</peopleNm>
<peopleNmEn>Christian Bale </peopleNmEn>
<repRoleNm>배우</repRoleNm>
<filmoNames>브라이드!|토르: 러브 앤 썬더|암스테르담|포드 V 페라리|바이스|몬태나|더 프로미스|빅쇼트|나이트 오브 컵스|엑소더스: 신들과 왕들|아웃 오브 더 퍼니스|아메리칸 허슬|다크 나이트 라이즈|진링의 13소녀|파이터|퍼블릭 에너미|터미네이터 : 미래전쟁의 시작|다크 나이트|아임 낫 데어|3:10 투 유마|프레스티지|레스큐 던|하쉬 타임|뉴월드|배트맨 비긴즈|머시니스트|이퀼리브리엄|레인 오브 파이어|로렐 캐년|아메리칸 싸이코|벨벳 골드마인</filmoNames>
</people>
</peopleList>
<source>영화진흥위원회</source>
</peopleListResult>
> xmlPeople <- getNodeSet(spParsed, "//people")
> xmlPeople
[[1]]
<people>
<peopleCd>10077325</peopleCd>
<peopleNm>크리스찬 베일</peopleNm>
<peopleNmEn>Christian Bale </peopleNmEn>
<repRoleNm>배우</repRoleNm>
<filmoNames>브라이드!|토르: 러브 앤 썬더|암스테르담|포드 V 페라리|바이스|몬태나|더 프로미스|빅쇼트|나이트 오브 컵스|엑소더스: 신들과 왕들|아웃 오브 더 퍼니스|아메리칸 허슬|다크 나이트 라이즈|진링의 13소녀|파이터|퍼블릭 에너미|터미네이터 : 미래전쟁의 시작|다크 나이트|아임 낫 데어|3:10 투 유마|프레스티지|레스큐 던|하쉬 타임|뉴월드|배트맨 비긴즈|머시니스트|이퀼리브리엄|레인 오브 파이어|로렐 캐년|아메리칸 싸이코|벨벳 골드마인</filmoNames>
</people>
attr(,"class")
[1] "XMLNodeSet"
> xmlFilm <- getNodeSet(spParsed, "//people/filmoNames")
> xmlFilm
[[1]]
<filmoNames>브라이드!|토르: 러브 앤 썬더|암스테르담|포드 V 페라리|바이스|몬태나|더 프로미스|빅쇼트|나이트 오브 컵스|엑소더스: 신들과 왕들|아웃 오브 더 퍼니스|아메리칸 허슬|다크 나이트 라이즈|진링의 13소녀|파이터|퍼블릭 에너미|터미네이터 : 미래전쟁의 시작|다크 나이트|아임 낫 데어|3:10 투 유마|프레스티지|레스큐 던|하쉬 타임|뉴월드|배트맨 비긴즈|머시니스트|이퀼리브리엄|레인 오브 파이어|로렐 캐년|아메리칸 싸이코|벨벳 골드마인</filmoNames>
attr(,"class")
[1] "XMLNodeSet"
> filmCh <- xmlToDataFrame(xmlFilm, stringsAsFactors = F)
> filmCh
text
1 브라이드!|토르: 러브 앤 썬더|암스테르담|포드 V 페라리|바이스|몬태나|더 프로미스|빅쇼트|나이트 오브 컵스|엑소더스: 신들과 왕들|아웃 오브 더 퍼니스|아메리칸 허슬|다크 나이트 라이즈|진링의 13소녀|파이터|퍼블릭 에너미|터미네이터 : 미래전쟁의 시작|다크 나이트|아임 낫 데어|3:10 투 유마|프레스티지|레스큐 던|하쉬 타임|뉴월드|배트맨 비긴즈|머시니스트|이퀼리브리엄|레인 오브 파이어|로렐 캐년|아메리칸 싸이코|벨벳 골드마인
> View(filmCh)
>
> library(tidyr)
> library(tidyverse)
>
> fs <- mutate(filmCh, text = strsplit(as.character(text), "\\|"))
> fs <- unnest(fs, text)
> str(fs)
tibble [31 × 1] (S3: tbl_df/tbl/data.frame)
$ text: chr [1:31] "브라이드!" "토르: 러브 앤 썬더" "암스테르담" "포드 V 페라리" ...
> data.frame(fs)
text
1 브라이드!
2 토르: 러브 앤 썬더
3 암스테르담
4 포드 V 페라리
5 바이스
6 몬태나
7 더 프로미스
8 빅쇼트
9 나이트 오브 컵스
10 엑소더스: 신들과 왕들
11 아웃 오브 더 퍼니스
12 아메리칸 허슬
13 다크 나이트 라이즈
14 진링의 13소녀
15 파이터
16 퍼블릭 에너미
17 터미네이터 : 미래전쟁의 시작
18 다크 나이트
19 아임 낫 데어
20 3:10 투 유마
21 프레스티지
22 레스큐 던
23 하쉬 타임
24 뉴월드
25 배트맨 비긴즈
26 머시니스트
27 이퀼리브리엄
28 레인 오브 파이어
29 로렐 캐년
30 아메리칸 싸이코
31 벨벳 골드마인
> fs[1,]
# A tibble: 1 × 1
text
<chr>
1 브라이드!
>
SearchMovieList.xml
search_movie_list.rs
##################################
# searchMovieList.xml
sFilms <- "https://kobis.or.kr/kobisopenapi/webservice/rest/movie/searchMovieList.xml"
KEY <- 'your_key_here'
dir <- "크리스토퍼 놀란"
dir <- iconv(dir, to="utf8")
url <-URLencode(iconv(sFilms, to="utf8"))
url
sfRes <- GET(url, query= list("key" = KEY, "directorNm"= dir))
sfRes
sfParsed <- xmlParse(sfRes)
sfParsed
xmlId <- getNodeSet(sfParsed, "//movie/movieCd")
xmlId
xmlF <- getNodeSet(sfParsed, "//movie/movieNm")
xmlF
filmId <- xmlToDataFrame(xmlId, stringsAsFactors = F)
filmId
colnames(filmId) <- "filmId"
filmId
filmN <- xmlToDataFrame(xmlF, stringsAsFactors = F)
colnames(filmN) <- "film"
filmN
str(filmN)
fg <- cbind(filmId, filmN)
fg
fg <- unnest(fg, film)
fg
search_movie_list.ro
> ##################################
> # searchMovieList.xml
>
> sFilms <- "https://kobis.or.kr/kobisopenapi/webservice/rest/movie/searchMovieList.xml"
> KEY <- 'your_key_here'
> dir <- "크리스토퍼 놀란"
> dir <- iconv(dir, to="utf8")
> url <-URLencode(iconv(sFilms, to="utf8"))
> url
[1] "https://kobis.or.kr/kobisopenapi/webservice/rest/movie/searchMovieList.xml"
>
> sfRes <- GET(url, query= list("key" = KEY, "directorNm"= dir))
> sfRes
Response [https://kobis.or.kr/kobisopenapi/webservice/rest/movie/searchMovieList.xml?key=your_key_here&directorNm=%ED%81%AC%EB%A6%AC%EC%8A%A4%ED%86%A0%ED%8D%BC%20%EB%86%80%EB%9E%80]
Date: 2026-06-01 03:30
Status: 200
Content-Type: application/xml;charset=utf-8
Size: 4.97 kB
<BINARY BODY>
> sfParsed <- xmlParse(sfRes)
> sfParsed
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<movieListResult>
<totCnt>13</totCnt>
<movieList>
<movie>
<movieCd>20250654</movieCd>
<movieNm>오디세이</movieNm>
<movieNmEn>The Odyssey</movieNmEn>
<prdtYear>2026</prdtYear>
<openDt/>
<typeNm>장편</typeNm>
<prdtStatNm>개봉예정</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>액션</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>액션</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20081056</movieCd>
<movieNm>다크 나이트</movieNm>
<movieNmEn>The Dark Knight</movieNmEn>
<prdtYear>2008</prdtYear>
<openDt>20080806</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>범죄,드라마,액션,미스터리</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>범죄</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20226431</movieCd>
<movieNm>오펜하이머</movieNm>
<movieNmEn>Oppenheimer</movieNmEn>
<prdtYear>2023</prdtYear>
<openDt>20230815</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>스릴러,드라마</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>스릴러</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20100312</movieCd>
<movieNm>인셉션</movieNm>
<movieNmEn>Inception</movieNmEn>
<prdtYear>2010</prdtYear>
<openDt>20100721</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>드라마,미스터리</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>드라마</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys>
<company>
<companyCd>20103668</companyCd>
<companyNm>워너 브러더스 픽쳐스</companyNm>
</company>
<company>
<companyCd>20104234</companyCd>
<companyNm>레젼데리 픽쳐스</companyNm>
</company>
</companys>
</movie>
<movie>
<movieCd>20164621</movieCd>
<movieNm>덩케르크</movieNm>
<movieNmEn>Dunkirk</movieNmEn>
<prdtYear>2017</prdtYear>
<openDt>20170720</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국,영국</nationAlt>
<genreAlt>액션,드라마,스릴러,전쟁</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>액션</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20201122</movieCd>
<movieNm>테넷</movieNm>
<movieNmEn>Tenet</movieNmEn>
<prdtYear>2020</prdtYear>
<openDt>20200826</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>액션,SF</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>액션</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20010238</movieCd>
<movieNm>메멘토</movieNm>
<movieNmEn>Memento</movieNmEn>
<prdtYear>2000</prdtYear>
<openDt>20010824</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>미스터리,범죄,스릴러</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>미스터리</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20112703</movieCd>
<movieNm>다크 나이트 라이즈</movieNm>
<movieNmEn>The Dark Knight Rises</movieNmEn>
<prdtYear>2012</prdtYear>
<openDt>20120719</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국,영국</nationAlt>
<genreAlt>액션,범죄,스릴러</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>액션</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
<movie>
<movieCd>20050112</movieCd>
<movieNm>배트맨 비긴즈</movieNm>
<movieNmEn>Batman Begins</movieNmEn>
<prdtYear>2005</prdtYear>
<openDt>20050624</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국</nationAlt>
<genreAlt>범죄,액션,판타지</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>범죄</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys>
<company>
<companyCd>20103668</companyCd>
<companyNm>워너 브러더스 픽쳐스</companyNm>
</company>
</companys>
</movie>
<movie>
<movieCd>20149120</movieCd>
<movieNm>인터스텔라</movieNm>
<movieNmEn>Interstellar</movieNmEn>
<prdtYear>2014</prdtYear>
<openDt>20141106</openDt>
<typeNm>장편</typeNm>
<prdtStatNm>개봉</prdtStatNm>
<nationAlt>미국,영국</nationAlt>
<genreAlt>SF</genreAlt>
<repNationNm>미국</repNationNm>
<repGenreNm>SF</repGenreNm>
<directors>
<director>
<peopleNm>크리스토퍼 놀란</peopleNm>
</director>
</directors>
<companys/>
</movie>
</movieList>
<source>영화진흥위원회</source>
</movieListResult>
> xmlId <- getNodeSet(sfParsed, "//movie/movieCd")
> xmlId
[[1]]
<movieCd>20250654</movieCd>
[[2]]
<movieCd>20081056</movieCd>
[[3]]
<movieCd>20226431</movieCd>
[[4]]
<movieCd>20100312</movieCd>
[[5]]
<movieCd>20164621</movieCd>
[[6]]
<movieCd>20201122</movieCd>
[[7]]
<movieCd>20010238</movieCd>
[[8]]
<movieCd>20112703</movieCd>
[[9]]
<movieCd>20050112</movieCd>
[[10]]
<movieCd>20149120</movieCd>
attr(,"class")
[1] "XMLNodeSet"
> xmlF <- getNodeSet(sfParsed, "//movie/movieNm")
> xmlF
[[1]]
<movieNm>오디세이</movieNm>
[[2]]
<movieNm>다크 나이트</movieNm>
[[3]]
<movieNm>오펜하이머</movieNm>
[[4]]
<movieNm>인셉션</movieNm>
[[5]]
<movieNm>덩케르크</movieNm>
[[6]]
<movieNm>테넷</movieNm>
[[7]]
<movieNm>메멘토</movieNm>
[[8]]
<movieNm>다크 나이트 라이즈</movieNm>
[[9]]
<movieNm>배트맨 비긴즈</movieNm>
[[10]]
<movieNm>인터스텔라</movieNm>
attr(,"class")
[1] "XMLNodeSet"
> filmId <- xmlToDataFrame(xmlId, stringsAsFactors = F)
> filmId
text
1 20250654
2 20081056
3 20226431
4 20100312
5 20164621
6 20201122
7 20010238
8 20112703
9 20050112
10 20149120
> colnames(filmId) <- "filmId"
> filmId
filmId
1 20250654
2 20081056
3 20226431
4 20100312
5 20164621
6 20201122
7 20010238
8 20112703
9 20050112
10 20149120
> filmN <- xmlToDataFrame(xmlF, stringsAsFactors = F)
> colnames(filmN) <- "film"
> filmN
film
1 오디세이
2 다크 나이트
3 오펜하이머
4 인셉션
5 덩케르크
6 테넷
7 메멘토
8 다크 나이트 라이즈
9 배트맨 비긴즈
10 인터스텔라
> str(filmN)
'data.frame': 10 obs. of 1 variable:
$ film: chr "오디세이" "다크 나이트" "오펜하이머" "인셉션" ...
> fg <- cbind(filmId, filmN)
> fg
filmId film
1 20250654 오디세이
2 20081056 다크 나이트
3 20226431 오펜하이머
4 20100312 인셉션
5 20164621 덩케르크
6 20201122 테넷
7 20010238 메멘토
8 20112703 다크 나이트 라이즈
9 20050112 배트맨 비긴즈
10 20149120 인터스텔라
> fg <- unnest(fg, film)
> fg
# A tibble: 10 × 2
filmId film
<chr> <chr>
1 20250654 오디세이
2 20081056 다크 나이트
3 20226431 오펜하이머
4 20100312 인셉션
5 20164621 덩케르크
6 20201122 테넷
7 20010238 메멘토
8 20112703 다크 나이트 라이즈
9 20050112 배트맨 비긴즈
10 20149120 인터스텔라
>
search_movie_list.rs
search_movie_list.ro
api_kof.1780284773.txt.gz · Last modified: by hkimscil
