Skip to main content

Python module for saint.ssu.ac.kr

Project description

pysaint

saint.ssu.ac.kr 에서 수강신청 과목정보를 실시간으로 가져오는 라이브러리 입니다.

setup (for end user)

pip install pysaint

Usage

get course data

import pysaint

res = pysaint.get('전공', '2018', '2 학기', silent=True)

res = pysaint.get('교양필수', range(2015, 2017), ('1 학기', '여름학기', '2 학기', '겨울학기'))

res = pysaint.get('교양선택', (2016, ), ('1 학기', ), silent=False)

res = pysaint.get('전공', '2018', '2 학기', line=200, silent=True)

# freeze as json file format
pysaint.save_json('./json/', '{}-{}-전공'.format('2016', '1 학기'), res)

get grade data

import pysaint

grades = pysaint.grade('2015xxxx')
# or you can pass password parameter after id
# e.g.) pysaint.grade('2015xxxx', 'example-password#%2015')
for grade in grades:
    print(grade)

>>>

{'과목ID': '21506737', '과목명': '기초공학수학', '이수년도': '2015', '이수학기': '1 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유': 취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506736', '과목명': '물리1및실험', '이수년도': '2015', '이수학기': '1 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유': '취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21503329', '과목명': '생활과경제', '이수년도': '2015', '이수학기': '1 학기', '학점수': '3', '성적기호': 'C+', '학술연구상태': '완료(성공)', '제외사유': '\소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506684', '과목명': '숭실인의역량과진로탐색1', '이수년도': '2015', '이수학기': '1 학기', '학점수': '1', '성적기호': 'A0', '학술연구상태': '완료(성공)', ' '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21501815', '과목명': '영어1', '이수년도': '2015', '이수학기': '1 학기', '학점수': '2', '성적기호': 'B-', '학술연구상태': '완료(성공)', '제외사유': '\xa0',': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506741', '과목명': '프로그래밍의이해', '이수년도': '2015', '이수학기': '1 학기', '학점수': '3', '성적기호': 'A0', '학술연구상태': '완료(성공)', '제외사유승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506634', '과목명': '한반도평화와통일', '이수년도': '2015', '이수학기': '1 학기', '학점수': '1', '성적기호': 'B+', '학술연구상태': '완료(성공)', '제외사유일': '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21503037', '과목명': '현대인과성서1', '이수년도': '2015', '이수학기': '1 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유':인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506797', '과목명': '공학수학', '이수년도': '2015', '이수학기': '2 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유': '\xa일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506796', '과목명': '물리2및실험', '이수년도': '2015', '이수학기': '2 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유': ' '신청일': '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21501816', '과목명': '영어2', '이수년도': '2015', '이수학기': '2 학기', '학점수': '2', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외사유': '\xa0',': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21505220', '과목명': '창의적사고와글쓰기', '이수년도': '2015', '이수학기': '2 학기', '학점수': '2', '성적기호': 'C+', '학술연구상태': '완료(성공)', '제외사'승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506798', '과목명': '프로그래밍기초및실습', '이수년도': '2015', '이수학기': '2 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외청구분': '\xa0', '신청일': '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21509167', '과목명': '현대음악의감상', '이수년도': '2015', '이수학기': '2 학기', '학점수': '3', '성적기호': 'B-', '학술연구상태': '완료(성공)', '제외사유'인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506867', '과목명': '고급프로그래밍및실습', '이수년도': '2016', '이수학기': '1 학기', '학점수': '3', '성적기호': 'A-', '학술연구상태': '완료(성공)', '제외 '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506870', '과목명': '디지털회로설계실험', '이수년도': '2016', '이수학기': '1 학기', '학점수': '1', '성적기호': 'B-', '학술연구상태': '완료(성공)', '제외사'신청구분': '\xa0', '신청일': '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506868', '과목명': '모바일프로그래밍', '이수년도': '2016', '이수학기': '1 학기', '학점수': '3', '성적기호': 'B-', '학술연구상태': '완료(성공)', '제외사유승인취소일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506866', '과목명': '이산수학', '이수년도': '2016', '이수학기': '1 학기', '학점수': '3', '성적기호': 'B-', '학술연구상태': '완료(성공)', '제외사유': '\xa일': '\xa0', '신청': '신청', '취소': '취소'}
{'과목ID': '21506685', '과목명': '창의적사고와독서토론', '이수년도': '2016', '이수학기': '1 학기', '학점수': '1', '성적기호': 'C-', '학술연구상태': '완료(성공)', '제외'\xa0', '신청구분': '\xa0', '신청일': '\xa0', '승인취소일': '\xa0', '신청': '신청', '취소': '취소'}

data

course

전공

>>
{
    "2018": {
        "2 학기": {
            "인문대학": {
                "기독교학과": {
                    "기독교학과": [
                        {
                            "계획": " ",
                            "이수구분(주전공)": "전기-기독교",
                            "이수구분(다전공)": "복필-기독교/부필-기독교",
                            "공학인증": " ",
                            "교과영역": " ",
                            "과목번호": "2150655801",
                            "과목명": "기독교사회학개론",
                            "분반": " ",
                            "교수명": "이철\n이철",
                            "개설학과": "기독교학과",
                            "시간/학점(설계)": "3.00 /3",
                            "수강인원": "0",
                            "여석": "50",
                            "강의시간(강의실)": "수 10:30-11:45 (진리관 11307-이철)\n목 12:00-13:15 (조만식기념관 12202-이철)",
                            "수강대상": "1학년 기독교"
                        },
                        {
                            "계획": " ",
                            "이수구분(주전공)": "전기-기독교",
                            "이수구분(다전공)": "복필-기독교",
                            "공학인증": " ",
                            "교과영역": " ",
                            "과목번호": "2150655901",
                            "과목명": "기독교상담심리학",
                            "분반": " ",
                            "교수명": "박승민\n박승민",
                            "개설학과": "기독교학과",
                            "시간/학점(설계)": "3.00 /3",
                            "수강인원": "0",
                            "여석": "60",
                            "강의시간(강의실)": "화 12:00-13:15 (조만식기념관 12328-박승민)\n목 10:30-11:45 (조만식기념관 12202-박승민)",
                            "수강대상": "1학년 기독교"
                        },
                        {
                            "계획": " ",
                            "이수구분(주전공)": "전기-기독교",
                            "이수구분(다전공)": "복필-기독교/부필-기독교",
                            "공학인증": " ",
                            "교과영역": " ",
                            "과목번호": "2150517001",
                            "과목명": "기독교학서론",
                            "분반": " ",
                            "교수명": "권연경\n권연경",
                            "개설학과": "기독교학과",
                            "시간/학점(설계)": "3.00 /3 (0 )",
                            "수강인원": "0",
                            "여석": "60",
                            "강의시간(강의실)": "수 09:00-10:15 (조만식기념관 12202-권연경)\n금 12:00-13:15 (조만식기념관 12310-권연경)",
                            "수강대상": "1학년 기독교"
                        },
                        ...

교양필수

{
  "2015": {
    "1 학기": {
      "전체학년": {
        "CHAPEL": [
          {
            "계획": " ",
            "이수구분(주전공)": "교필",
            "이수구분(다전공)": " ",
            "공학인증": " ",
            "교과영역": "채플과목",
            "과목번호": "2150101513",
            "과목명": "채플",
            "분반": " ",
            "교수명": " ",
            "개설학과": "베어드학부대학 행정팀",
            "시간/학점(설계)": "1.00 /0 (0 )",
            "수강인원": "187",
            "여석": "812",
            "강의시간(강의실)": "토 07:00-07:50 (형남공학관 050115-)",
            "수강대상": "전체학년 금융경제 ,국제무역 ,혁신경영학과(계약학과) ,벤처경영학과(계약학과)"
          },
          {
            "계획": " ",
            "이수구분(주전공)": "교필",
            "이수구분(다전공)": " ",
            "공학인증": " ",
            "교과영역": "채플과목",
            "과목번호": "2150101512",
            "과목명": "채플(공통채플:기독인채플)",
            "분반": " ",
            "교수명": " ",
            "개설학과": "베어드학부대학 행정팀",
            "시간/학점(설계)": "1.00 /0 (0 )",
            "수강인원": "117",
            "여석": "0",
            "강의시간(강의실)": "수 15:00-15:50 (-)",
            "수강대상": "전체"
          },
          ...

교양선택

{
  "2016": {
    "1 학기": {
      "전체": [
        {
          "계획": " ",
          "이수구분(주전공)": "교선",
          "이수구분(다전공)": " ",
          "공학인증": " ",
          "교과영역": "균형교양(자연과학-자연과학)\n*자연과학과수리(융합-자연)",
          "과목번호": "2150116601",
          "과목명": "과학사",
          "분반": " ",
          "교수명": "이권재",
          "개설학과": "물리학과",
          "시간/학점(설계)": "3.00 /3 (0 )",
          "수강인원": "32",
          "여석": "18",
          "강의시간(강의실)": "월 수 16:30-17:45 (조만식기념관 12525-이권재)",
          "수강대상": "전체"
        },
        {
          "계획": " ",
          "이수구분(주전공)": "교선",
          "이수구분(다전공)": " ",
          "공학인증": " ",
          "교과영역": "균형교양(사회과학-사회/정치/경제)\n*세계의문화와국제관계(핵심-창의)",
          "과목번호": "2150121901",
          "과목명": "국제관계의이해",
          "분반": " ",
          "교수명": "이한규",
          "개설학과": "정치외교학과",
          "시간/학점(설계)": "3.00 /3 (0 )",
          "수강인원": "57",
          "여석": "3",
          "강의시간(강의실)": "월 수 15:00-16:15 (미래관 20403-이한규)",
          "수강대상": "전체"
        },
        ...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysaint-20.8.12.tar.gz (18.5 kB view details)

Uploaded Source

File details

Details for the file pysaint-20.8.12.tar.gz.

File metadata

  • Download URL: pysaint-20.8.12.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.24.0 CPython/3.7.4

File hashes

Hashes for pysaint-20.8.12.tar.gz
Algorithm Hash digest
SHA256 8a09657cf59c71a556005b44acf37b3bfd219b2321018e0c795c0d893a59ee43
MD5 0549735d4dc0c2ed1050f2269c775843
BLAKE2b-256 868c6be13d4c1d7fffcf397f7aaddde7a73a8687f5044e6e06983ca51128b3c3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page