BeautifulSoup4 활용1
·
python/python_selenium
import requests from bs4 import BeautifulSoup url = "" res = requests.get(url) res.raise_for_status() soup = BeautifulSoup(res.text, "lxml") # tistory 전체 제목 목록 가져오기 # class 속성이 tit_post인 모든 "strong" element를 반환 titles = soup.find_all("strong", attrs={"class":"tit_post"}) print(len(titles)) for title in titles : print(title.get_text()) find_all : 속성이 일치하는 모든 element를 리스트 형태로 반환 ## 가져온 값에 해당하는 정보 ..
BeautifulSoup4 기본
·
python/python_selenium
import requests from bs4 import BeautifulSoup url = "" res = requests.get(url) res.raise_for_status() # res.text 를 lxml파서를 통해 beautifulsoup 객체로 만듬. soup = BeautifulSoup(res.text, "lxml") # html 에서 첫번째로 발견되는 title 값을 가져옴. print(soup.title) # title값의 text값만 가져옴. print(soup.title.get_text()) print(soup.link) # link태그가 가지고있는 속성을 가져옴. print(soup.link.attrs) # link 태그 안의 특정 속성을 출력 print(soup.link['rel..
user agent
·
python/python_selenium
import requests url = "" # uster_agent를 입력함으로서 실제 크롬에서 접속하는것과 동일한 결과를 받을 수 있음. header = {'User-Agent':("Mozilla/5.0 (Windows NT 10.0; Win64; x64) " "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36")} # 응답코드가 403이면 권한없음. res = requests.get(url, headers=header) # res.raise_for_status() print("응답코드 : ",res.status_code) # mygoogle.html 을 쓰기모드로 열고 res.text를 입력. with open("tistor..
정규식
·
python/python_selenium
import re def print_match(m): if m: print(m.group()) else: print("매칭되지 않음.") # . : 하나의 문자를 의미함. # (ca.e) : cake, care, case ... # ^ : 문자열의 시작 # (^de) : desk, demention, dev ... # $ : 문쟈열의 끝 # (se$) : case, rase, base ... # p에 ca.e의 패턴을 입력함. p = re.compile("ca.e") # 텍스트의 문자열의 처음부터 p패턴과 일치하면 match객체를 m에 삽입. # 일치하지 않으면 `None`이 삽입됨 m = p.match("good care") # 매칭되지 않으면 m.group() 출력 시, 에러가 발생함. print_m..
웹스크래핑에 필요한 이론
·
python/python_selenium
1. HTML 웹페이지의 본문 안녕하세요, 조○○입니다. 구글로 이동하기 웹스크래핑 : 웹페이지에서 내가 원하는 부분만 떼오는 것 웹 크롤링 : 페이지가 주어지면 링크를 따라가며 내용을 가져오는 것. HTML : 웹사이트의 뼈대를 의미함. CSS : 웹사이트의 디자인적인 요소를 의미함 Java Script : 웹사이트 내의 움직임, 작업 등을 의미함. 2. Xpath # xpath = html 코드에서 어떠한 값의 경로를 의미함. 김○○ 박○○ 최○○ 조○○ 김○○ ... 3반 박○○ 비슷한 tag or element가 있을 때 어떤 element를 지칭하는지 명확하게 하기 위해 xpath 사용 xpath형식 = /학교/학년/반/학생[n]/... unique 값이 있을 때 = //*[@학번 = "1-1-..
오락실 pang게임 직접 코딩해보기.py
·
python/python_pygame
##1 환경설정 & 프레임 ###################################################################### # 무조건 해야하는 부분 ###################################################################### import pygame import os pygame.init() screen_width = 640 screen_height = 480 screen = pygame.display.set_mode((screen_width, screen_height)) # 화면 타이틀 설정 pygame.display.set_caption("rusharp Pang") # 게임 이름 # 객체 생성 current_path = ..
오락실 pang게임.py
·
python/python_pygame
목표 : 오락실 pang게임 만들기. 캐릭터는 화면 아래에 위치, 좌우로만 이동 가능 스페이스를 누르면 무기를 쏘아 올림 큰 공 1개가 나타나서 바운스 무기에 닿으면 공은 작은 크기 2개로 분할, 가장 작은 크기의 공은 사라짐 모든 공을 없애면 게임종료(성공) 캐릭터가 공에 닿으면 게임 종료 (실패) 시간 제한 99초 초과 시 게임 종료 (실패) FPS는 30으로 고정 초기 설정 1. 환경설정 & 프레임 import pygame import os #1 초기화 (반드시 필요.) pygame.init() # 화면 크기 설정 screen_width = 640 # 가로 크기 screen_height = 480 # 세로 크기 screen = pygame.display.set_mode((screen_width, s..
pygame 기초
·
python/python_pygame
##1 환경설정 & 프레임 ###################################################################### # 무조건 해야하는 부분 ###################################################################### import pygame #1 초기화 (반드시 필요.) pygame.init() #1 화면 크기 설정 screen_width = 480 # 가로 크기 screen_height = 640 # 세로 크기 screen = pygame.display.set_mode((screen_width, screen_height)) #1 화면 타이틀 설정 pygame.display.set_caption("rusharp Ga..