본문 바로가기
Python

[파이썬] 공공 데이터 포털 API 한국저작권위원회 저작권 등록 정보 서비스 조회 사용방법

by 퍼포먼스마케팅코더 2022. 8. 13.
반응형

여러분들 중에 한국 저작권위원회에서 혹시 저작권이 있는지 없는가 이거에 대해서 궁금하지 않으세요. 그것에 관련돼 있었던 정보를 공공 데이터 포털 api를 통해서 사용을 할 수가 있습니다. 오늘은 그거에 대해서 알아볼 건데 마찬가지로 파이썬 코딩을 통해서 이러한 정보가 저작권에 관련된 정보죠. 그에 대한 정보를 확인을 할 수가 있습니다. 이거에 대한 정보는 한국 저작권위원회라고 있어요. 공신력 있는 위원회에서 관리하는 곳에서 나온 데이터이기 때문에 공신력이 있다고 보셔도 될 것 같습니다.

[파이썬] 공공 데이터 포털 API 한국저작권위원회 저작권 등록 정보 서비스 조회 사용방법

 

 

공공 데이터 포털 API 한국저작권위원회 저작권 등록 정보 서비스 조회 API 키 발급

먼저 첫 번째로 저작권 등록 정보 서비스를 이용하기 위해서는 api 키를 발급을 해야겠죠. 그래서 밑에 사이트가 있기 때문에 거기서 발급을 해보시면 될 것 같고요.

 

https://www.data.go.kr/tcs/dss/selectApiDataDetailView.do?publicDataPk=15000477 

 

한국저작권위원회_저작권등록정보서비스

한국저작권위원회에 등록된 저작권 등록정보 서비스 약 160,000건의 저작물이 등록되어 있으며, 저작권 등록정보 통합검색 및 상세 조회서비스를 제공한다.

www.data.go.kr

 

 

파이썬 공공 데이터 포털 API 한국저작권위원회 저작권 등록 정보 서비스 조회 사용방법

저작권 등록 정보에 대한 정보를 파이썬 코딩이 여러 가지가 있는데 먼저 첫 번째로 말씀드릴 거는 저작권 등록 정보에 대한 통합 검색 목록을 조회하는 거예요. 그래서 두 가지가 있는데 이 api 이 발급됐었던 것 그것만 집어넣어주시면 바로 내용이 나오게끔 써놨습니다. 여기에 한 가지 추가적으로 제목 저작 물의 명칭을 써놔야 돼요 그래서 그것만 고려를 해주시고 코딩을 넣으시면 될 것 같고요 여기서 한 가지 더 추가적으로 밑에 오류 부분이 있더라고요 제가 오류 있었던 부분들을 몇 몇 가지를 바꿔서 써놓긴 했는데 더 추가적인 오류가 나올 수도 있습니다. 제가 여기까지는 했었는데 별 문제는 없었는데 더 추가적인 오류나 이런 에러 문구가 있다고 한다면 말씀만 해주시면 될 것 같아요. 그러면 수정을 해서 예외 처리를 할 수 있도록 해놓도록 해놓겠습니다.

from urllib.request import urlopen
from urllib.parse import urlencode, unquote, quote_plus
import urllib
import requests
import json
import pandas as pd
from datetime import datetime,timedelta
import warnings
import xmltodict # 결과가 xml 형식으로 반환된다. 이것을 dict 로 바꿔주는 라이브러리다

#한국저작권위원회_저작권등록정보서비스
#저작권등록정보에 대한 통합검색목록을 조회


serviceKey = '' #api 키 발급

contTitle = '뽕'

url = 'http://openapi.copyright.or.kr/openapi/service/rest/CpyrRegInforService/getCpyrRegInforUniList?serviceKey={}&contTitle={}'.format(serviceKey, contTitle)

response = requests.get(url, verify=False)
#HTTPSConnectionPool(host='www.work.go.kr', port=443): Max retries exceeded with url 
# 오류 발견시 requests.get(url, verify=False) 로 넣어주면됨. 

dict_data = xmltodict.parse(response.text) #xml을 json로 변환
json_data = json.dumps(dict_data, ensure_ascii=False)  #한글이 깨지면 ensure_ascii 코드를 False로 하면됨.
r_data = json.loads(json_data)  #json 변환


#Shape of passed values is (2, 4), indices imply (1, 4)
#data = pd.DataFrame(r_data['response']['body']['items']['item'])  이걸로 넣어주면 됨.


#If using all scalar values, you must pass an index 에러 문구가 뜰 경우, index=[0]
#data = pd.DataFrame(r_data['response']['body']['items']['item'], index=[0]) 이렇게 바꿔주면됨.

try :
    data = pd.DataFrame(r_data['response']['body']['items']['item'])
except :
    data = pd.DataFrame(r_data['response']['body']['items']['item'], index=[0])  #데이터프레임으로 보자 

data



#출력값

#authorName    저작물의 제작자 및 제작회사
#contTitle     저작물의 명칭
#regDate       저작물의 등록일자 Date type으로 크기 항목크기 없음
#regId         저작물의 고유 등록번호

그리고 맨 마지막으로 저작권 등록 정보에 대한 위에 거는 조회였는데 검색에 대한 상세 내용에 대한 정보를 볼 수가 있어요. 밑에 부분은 저장물에 고유 등록번호가 있죠. 그거를 입력을 해 주시면은 마찬가지로 저작물에 대한 상세 내용을 보실 수 있습니다. 별반 큰 차이는 없습니다. 출력값이 어떻게 되는지 밑에 써놨으니까 부분에 참고를 해보시면 될 것 같습니다.

#저작권등록정보 통합검색상세 조회
#저작권등록정보에 대한 통합검색상세내용을 조회

serviceKey = '' #api 키 발급
regId='C-2015-012052' #저작물의 고유 등록번호

url ='http://openapi.copyright.or.kr/openapi/service/rest/CpyrRegInforService/getCpyrRegInforUniDetail?serviceKey={}&regId={}'.format(serviceKey, regId)

response = requests.get(url, verify=False)
#HTTPSConnectionPool(host='www.work.go.kr', port=443): Max retries exceeded with url 
# 오류 발견시 requests.get(url, verify=False) 로 넣어주면됨. 

dict_data = xmltodict.parse(response.text) #xml을 json로 변환
json_data = json.dumps(dict_data, ensure_ascii=False)  #한글이 깨지면 ensure_ascii 코드를 False로 하면됨.
r_data = json.loads(json_data)  #json 변환

try :
    data = pd.DataFrame(r_data['response']['body']['item'])
except :
    data = pd.DataFrame(r_data['response']['body']['item'], index=[0])  #데이터프레임으로 보자 

data

#출력값

#authorName       저작물의 제작자 및 제작회사
#contClassName    저작물별 종류 ex)어문,음반,건축등
#contTitle        저작물의 명칭
#disposalAddr1    저작물의 등록 후 권리자 (일반적으로 저작자)
#disposalName     등록 권리자의 주소
#regDate          저작물의 등록일자 Date type으로 크기 항목크기 없음
#regId            저작물의 고유 등록번호
#regPart1Name     저작물의 등록 부문
#regPart2Name     저작물의 등록 부문에 대한 내용
#regReason        저작물을 등록하게 되는 이유 ex) 질권소멸,양도,창작,음고정 등

 

반응형

댓글