Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
F
foss-final-project
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Mingi Song
foss-final-project
Commits
48563198
Commit
48563198
authored
2 years ago
by
Mingi Song
Browse files
Options
Downloads
Patches
Plain Diff
Update README.md
parent
1e683bbe
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
README.md
+55
-2
55 additions, 2 deletions
README.md
with
55 additions
and
2 deletions
README.md
+
55
−
2
View file @
48563198
...
...
@@ -3,11 +3,13 @@
## * Python Request(리퀘스츠) 라이브러리 사용법 소개 및 활용을 통한 주식 가격 알림이 프로그램 제작
### 목차
[
서론
](
#서론
)
1.
[
Python이란?
](
#Python이란?
)
2.
[
Python 라이브러리 'Requests'
](
Python-라이브러리-'Requests'
)
3.
[
Requests 예제
](
Requests-예제
)
4.
[
주식 가격 알림이 제작 및 실습
](
주식-가격-알림이-제작-및-실습
)
5.
[
마무리
](
마무리
)
6.
## Python이란?
### Python이란?
-
1990년 암스테르담의 귀도 반 로섬이 개발한 인터프리터 언어이다.
...
...
@@ -61,30 +63,81 @@
## Requests 예제
### Naver에 HTTP 요청 보내기
-
네이버에 http 요청을 보내, 네이버의 html 데이터를 불러오도록 해보자.

-
위와 같이
`request.get(url)`
를 통해서 html 데이터를 불러올 수 있다.

-
결과값은 http status가 출력되는 것을 확인할 수 있다.

-
html 데이터를 담고 있는 변수 'response'를 text 형태로 출력하면 다음과 같다.

### Naver에 HTTP 요청 보내기 - beautifulSoup 응용
-
requests를 통해서 불러온 html 데이터는 단순히 string형태이기 때문에, 이 데이터를 html형태로 파싱해줘야한다.
-
이때, beautifulSoup를 통해서 html로 파싱할 수 있다.

-
위와 같이 변수 'response'를
`bs(html 데이터, 'html.parser')`
를 통해서 html형태로 바꾸어 줄 수 있다.
-
또한
`find(태그, 속성)`
함수를 통해서 html 데이터에서 원하는 정보를 가져올 수 있다.

-
위와 같은 경우에는 'a' 태그이면서 'class= link_set'의 속성을 가지는 html 데이터를 호출하였다.

## 주식 가격 알림이 제작 및 실습
-
앞에서 배운 requests와 beautifulSoup 라이브러리를 응용하여 주식 가격 알림이 프로그램을 제작해보자.
-
주식 가격 알림이 : 종목의 현재가를 알려주는 프로그램
### 주식 가격 알림이 설계
#### 기능 1 - 종목 현재가 조회
-
주식 종목 이름 기입한다.
-
현재가를 조회 후 출력한다.
-
일치하는 종목이 없을 경우 메인 화면으로 복귀한다.
#### 기능 2 - 지정 종목의 현재가를 일정 시간 간격으로 조회
-
지정 주식 종목의 이름 기입한다.
-
1분 간격으로 주식의 현재가를 조회 후 출력한다.
-
주식 시장이 끝나는 3시 20분에 자동 종료한다.
#### 기능 3 - 종료
-
프로그램 종료
#### 사이트

-
네이버 금융 국내증시 시가총액('https://finance.naver.com/sise/sise_market_sum.nhn?page=')페이지에서 requests를 통해서 각 종목의 이름과 현재가를 불러오도록 할 것이다.
### 가격 조회 알고리즘 - finding_stock_price(stock_name)
1.
해당 url의 html 정보를 requests 한다.
2.
얻어온 정보를 beautifulSoup를 통해 html로 변환
3.
html 태그를 통하여 n번 페이지의 주식 data를 리스트에 저장한다.
4.
for문을 통해 찾고자 하는 주식의 종목이 있는지를 확인한다.
5.
없을 경우 다음 페이지를 검색한다.
### 가격 조회 알고리즘

### 실행파일로 만들기
-
실행 파일로 배포하기 위하여 'pyinstaller'를 사용한다.
#### pyinstaller 설치 방법

#### pyinstaller를 통해 exe파일 만들기

### 주식 가격 알림이 프로그램
#### 기능 1

-
주식 종목명을 기입하였을 때, 현재가가 출력되는 것을 확인할 수 있다.
#### 기능 2

-
1분 간격으로 기입한 종목의 현재가가 갱신되어 출력되는 것을 확인할 수 있다.
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment