일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 워들
- github push
- 깃허브 페이지
- Crawling
- wordle 사이트
- 리액트 배포
- 데이터타입
- HIG 한글
- 사용자 정의 연산자
- 중위 연산자
- 백준 문제
- 워들 사이트
- Github
- Python
- SWiFT
- HIG 한글 번역
- Apple HIG
- 전위 연산자
- 스위프트 기초
- XCTest
- 깃허브 페이지 배포
- 후위 연산자
- 리액트
- react
- 스위프트
- 깃허브 푸시
- 크롤링
- 파이썬 깃허브 푸시
- 파이썬
- 프로젝트
Archives
- Today
- Total
Jeonhui {ios}
Baekjoon Projects - 1. github auto push baekjoon (1) [웹 크롤링] 본문
안녕하세요 Jeonhui 입니다.
이번에 baekjoon online judge 사이트를 이용해 세 가지 개인 프로젝트를 진행해보았습니다.
첫 번째 프로젝트는 baekjoon의 문제 풀이 결과를 가져와 맞았을 경우 깃허브에 자동으로 push 해주는 프로그램입니다.
전체 코드는 https://github.com/Jeonhui/baekjoon/blob/main/baekjoon_autoPush.py에 저장되어있습니다.
파이썬 패키지인 pygithub, requests, bs4를 이용하여 개발하였습니다.
먼저, pip3를 통해
위 패키지들을 이용하기 위해 다음 명령어들을 입력해 줍니다.
pip3 install pygithub
pip3 install requests
pip3 install bs4
프로그램의 기본 설정을 위해 아래의 항목들을 입력해줍니다.
baekjoon_id = 'baekjoon_id'
token = 'ghp_~'
repository = 'user_name/repository'
user_github_file_path = '_'
user_file_path = '_'
다음은 아래와 같습니다.
baekjoon_id = 백준_ID
token = Githubtoken
repository = 'user_name/repository'
ex) 'Jeonhui/baekjoon'
user_github_file_path = github에 저장할 경로
user_file_path = 파일 경로
file_path의 default값은 "_"이고 "_"으로 되어있다면 해당 파일이 있는 현재 위치/solved/{problem_number}.py 파일을 찾게 됩니다.
이렇게 프로그램의 기본 설정을 마치겠습니다.
다음 시간에는 코드 설명을 해보겠습니다.
웹 스크래핑 (Web Scraping)
백준 온라인 저지는 웹 스크래핑을 금지하고 있습니다.
지나치게 많은 트래픽을 발생시키는 경우에는 사이트 이용이 정지됩니다.
스타트링크는 웹 스크래핑의 수요와 이유를 충분히 이해하고 있기 때문에, API를 제공할 계획이 있습니다.
https://help.acmicpc.net/rule
확인해본 결과 백준에서는 웹 스크래핑을 금지하고 있기 때문에 이 소스코드는 참고만 해주시기 바랍니다.
'projects' 카테고리의 다른 글
Baekjoon Projects - 3. test Sample Inputs [웹 크롤링] (0) | 2022.02.23 |
---|---|
Baekjoon Projects - 2. get Problem [웹 크롤링] (0) | 2022.02.23 |
Baekjoon Projects - 1. github auto push baekjoon (2) [웹 크롤링] (0) | 2022.02.23 |