일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Anaconda
- 절삭평균
- 누적분포함수
- 표본공간
- 첨가행렬
- 기본행연산
- 사조사
- 통계학개론
- 모수
- 조건부확률
- 피어슨상관계수
- jupyter notebook
- 표본평균
- 이산확률질량함수
- 확률밀도함수
- 수치형자료
- 범주형자료
- 이항분포
- 수학적확률
- 기댓값과 분산
- 포아송분포
- 베르누이분포
- pmf
- 통계학입문
- 모평균
- 이산형
- 연속확률변수
- 균일분포
- 행사다리꼴
- 이변량자료
- Today
- Total
summ의 블로그
파이썬 기초와 웹 크롤링 기초 본문
240919
class
변수와 함수를 한데 모아 나중에 재사용이 가능하게 함
클래스 선언 --> 객체(변수, 함수) 생성 --> 메서드 실행
* 메서드란? 클래스 안에 선언되는 함수
class 라는 큰 틀이 존재
class는 '데이터 타입'
객체는 어떤 데이터타입인지에 따라 사용 가능한 변수, 메서드가 달라짐.
special method
생성자 메서드 __init__(self) *self: 자기 자신
객체 생성 시 실행되는 메서드로 사용되는 변수의 초기값을 설정하는 용도로 사용
class Account:
balance = 0
def deposit(self, amount):
self.balance += amount
def withdraw(self, amount):
self.balance -= amount
Client - Internet - Server
URL
uniform Resource Locator
http://news.naver.com:80/main/read.nhn?mode=LSD&mid=shm&sid1=105&oid=001&aid=0009847211#da_727145
- http:// - protocol
https:// 암호화복호화
- news - sub domain
- naver.com - primary domain
- 80 - port
or 443 생략 가능 local: 8888
- /main/ - path
dir라고 생각. 파일에 접근하기 위한 dir
- read.nhn - page
dir 안의 file. server의 file이 브라우저로 다운
- mode=LSD - query
? 물음표 뒤 공간 :: 쿼리
- #da_727145 - fragment
전체 페이지에서 해당하는 위치로 이동이 가능하도록 함
* index.html 이 생략된 것
http request method
client server 간
--> request (url)
<-- response (data, html, json, image, pdf ... )
- browser - was dbs 와 연결
request 방법
- get
url 안에 query 포함
query 데이터 노출, 전송이 가능한 데이터가 작음
--> 보안에 취약함
- post
body(영역) 안에 query 포함
query 데이터 비노출, 전송이 가능한 데이터 많음
http status code
client server 데이터를 주고받은 결과 정보
- 2-- success
- 3-- redirect
요청해서 받은 html코드가 memory에 저장되어 브라우저에 보여줌.
새로고침할 때
: 메모리에 있는 데이터를 (network traffic 사용하지 않고) 가져오는 것. cache
- 4-- request error
404 page x
- 5-- server error
서버에 문제가 생겼을 때
==> 400,500 에러가 나면 내 요청이 잘못된 것
에러코드 결정은 was에서 결정
주요 용어 정리
cookie: ssd를 저장공간으로 사용하는 데이터
session: client - browser와 server 연결할 때의 연결 정보
cache: ram(메모리)에 저장하는 데이터, 사용이 빠름
scraping & crawling
특정 데이터 vs 전체 데이터 수집 차이
internet
pc -> 공유기 -> 사설망 -> 백본망 -> 부산 -> 해저케이블 -> ca -> server
OSI 7 layer
물 데 네 전 세 표 응
물리 physical data
데이터 링크 data link data
네트워크 network data data
전송 transport segement
세션 session packet
표현 presentation frame
응용 application bits
데이터 수집
데이터 수집 3가지 방식
- 동적 페이지
- url은 바뀌지 않음
- json
- 정적 페이지
- url 바뀜
- html
- url 찾기 --> 웹 페이지 분석 (chrom dev tool )
- request (url) --> response(data) - json 동적 / html 정적
- data --> df 변환 : parsing
json 과 html 의 파싱 방법 다름
- selenium
직접 브라우저를 사용하여 데이터를 받음
client server
url --> request (url)
py <-- response (data)
# 동적 페이지
def 함수명(page=, page_size=):
url = f''
response = requests.get(url)
data = response.json()
return pd.DataFrame(data)[['변수1', '변수2']]
'파이썬' 카테고리의 다른 글
웹 크롤링 (3) (0) | 2024.09.23 |
---|---|
웹 크롤링 (2) (1) | 2024.09.21 |
이변량분석 범주형 변수 (0) | 2024.09.13 |
범주형 변수와 수치형 변수 분석 (0) | 2024.09.13 |
수치형변수 이변량분석 (0) | 2024.09.12 |