설치
일반
- "epg2xml.json(또는 Channel.json) 파일 형식이 잘못되었습니다."라는 오류가 생겼어요.
-
첫번째 JSON의 오류입니다. 수정하다가 뭔가 실수가 있을 수 있습니다. https://kr.piliapp.com/json/validator/ 이런 사이트에 가서 JSON 파일을 검사해보세요.
-
윈도우 메모장을 사용해서 나오는 오류입니다. 윈도우의 메모장으로 편집하지 마시고 notepad++에서 인코딩>UTF-8(BOM없음)으로 변환후에 저장하세요.
-
윈도우와 유닉스(리눅스)는 쓰는 엔터(CR/LF)가 틀립니다. 그래서 나는 오류일 수 있습니다. 이 경우에는 편집기에서 파일 형식을 유닉스로 바꿀 수 있는 메뉴가 있는지 찾아보세요.
-
버전업은 필수인가요?
EPG 정보를 잘가져오고 있다면 버전업은 굳이 하실 필요가 없습니다. -
EPG Grabber moduel 탭이 없어요
General > Base 에서 User interface level을 Expert로 바꾸세요 -
EPG 정보가 지상파 정보 5개 만 가져옵니다.
epg2xml.json의 MyChannels 항목에 EPG 정보를 가져올 채널 ID를 등록하고 사용하세요. -
timeout 시간을 늘려도 되나요
되도록이면 늘리지 말길 권하지만 에러가 난다면 5를 7정도록 고치시는게 적당합니다.
참고 사항
-
Channel.json 파일을 임의로 수정해도 되나요?
물론입니다. 소스를 가져오는 사이트는 부하 분산을 위해서 제가 임의로 선정한 겁니다. 적당하게 분산만 시킨다면 어느 사이트를 써도 관계없습니다. -
MyChannels이 무엇인가요?
epg2xml 프로그램이 EPG 정보를 가져오는 채널 ID를 등록하는 부분입니다. 채널 ID는 Channles.json 파일에 있는 것을 등록하시면 됩니다. 현재는 공중파 채널 5개만 등록되어 있습니다. 필요한 채널을 추가하시면 됩니다. -
MyChannels에 모든 채널을 다 등록해야 하나요?
아니요. 필요한 채널만 등록하세요. 트래픽 낭비에 시스템 낭비입니다. -
MyChannels을 안쓸 수는 없나요?
MyChannles를 만든 이유는 두가지입니다.첫번째 개인설정의 분리입니다. Channels.json은 수시로 변하는 관계로 개인설정에 따른 분리가 필요했습니다. 두번째로 필요한 채널정보만 가져오도록 하고자 하는 의도입니다. -
기능 추가를 하고 싶어요?
Issues에 글 남겨주세요.
파이썬 버전
- 모듈을 설치했는데도 설치되어 있지 않았다고 나와요.
파이썬을 실행해주시고 아래와 같은 형식으로 모듈이 설치되어 있는 위치를 찾아보세요.
easy_install로 모듈을 설치했다면 아래 위치로 가서 삭제후 pip로 설치하길 권합니다.
easy_install로 모듈 설치시 위치를 인식하지 못하는 오류가 있습니다.
#python
Python 2.7.12 (default, Jun 3 2017, 02:39:43)
[GCC 4.9.3 20150311 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bs4
>>> bs4
<module 'bs4' from '/usr/lib/python2.7/site-packages/bs4/__init__.pyc'>
>>>
아니면 아래와 같은 방법으로 고치면 되지만 모듈을 새로 설치하는 방법을 권합니다.
수정전
try:
imp.find_module('bs4')
from bs4 import BeautifulSoup, SoupStrainer
except ImportError:
print("Error : ", "BeautifulSoup 모듈이 설치되지 않았습니다.", file=sys.stderr)
sys.exit()
try:
imp.find_module('lxml')
except ImportError:
print("Error : ", "lxml 모듈이 설치되지 않았습니다.", file=sys.stderr)
sys.exit()
try:
imp.find_module('requests')
import requests
except ImportError:
print("Error : ", "requests 모듈이 설치되지 않았습니다.", file=sys.stderr)
sys.exit()
수정후
from bs4 import BeautifulSoup, SoupStrainer
import requests
호스팅 하는 사이트가 Python을 지원하는 데 pip로 설치를 할 수가 없습니다.
- 아래와 같은 명령어를 사용하면 설치가 가능할 수도 있습니다. pip install 패키지명 --user
lxml을 설치할 수가 없습니다. 다른 htmlparser를 쓸 수는 없나요.
- htmlparser = 'lxml' 부분을 찾아서 변경하시고
try:
imp.find_module('lxml')
except ImportError:
print("Error : ", "lxml 모듈이 설치되지 않았습니다.", file=sys.stderr)
sys.exit()
부분을 삭제해주세요.
PHP CLI 버전
- PHP 버전이 맞지 않아서 실행이 안되는데요.
테스트해본 환경에서 정상적인 작동을 보장한다는 것입니다. 혹시나 버전이 맞지 않은데 테스트해보고 싶다면 아래와 같은 라인을 삭제하고 실행해보시기 바랍니다.
여전히 문제가 발생한다면 PHP 버전과 에러 메세지를 보내주시면 반영해보도록 하겠습니다. PHP 5.4.45 버전 이상에서는 작동을 확인했습니다.
if(version_compare(PHP_VERSION, '5.5.9','<')) :
printError("PHP 버전은 5.5.9 이상이어야 합니다.");
printError("현재 PHP 버전은 ".PHP_VERSION." 입니다.");
exit;
endif;
PHP WEB 버전
- PHP 버전이 맞지 않아서 실행이 안되는데요.
PHP CLI 버전과 같은 방법을 해보시든가 무료호스팅을 사용한다면 호스팅 사이트를 바꾸기를 추천합니다.