인공지능 공부/남박사의 파이썬 실전
(인프런) 파이썬 실전 Open cv 와 Pillow 사용법 읽히기
from PIL import Image import requests import cv2 import numpy # img = Image.open("c:\\test\\sample.jpg") # print(img.size) # img = img.rotate(45) # img.show() # img.save("sample.png") # url = "https://cdn.pixabay.com/photo/2020/12/12/17/24/little-egret-5826070_960_720.jpg" # img2 = Image.open(requests.get(url, stream=True).raw) # img2.show() # img2.save("bird.jpg") ''' open cv는 고연산 목적 ''' url = ..
(인프런) 파이썬 실전 다중 Thread 채팅프로그램 만들기
import socket from threading import Thread def recv_message(sock): while True: msg = sock.recv(1024) print(msg.decode()) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect(("127.0.0.1", 12000)) th = Thread(target=recv_message, args=(sock, )) th.daemon = True th.start() while True: msg = input("입력 >") sock.send(msg.encode()) if msg == "/by": break import socketserver class My..
(인프런) 파이썬 실전 Server - Client , Thread 기초
class CarMixIn: def ready(self): print("믹스인 레디") def start(self): print("{}가 {}속도로 달립니다.".format(self.name, self.speed)) class Performance(): def __init__(self, name, speed): self.name = name self.speed = speed self.ready() ##다중상속받는 SuperCar -> CarMixIn , Performence 다 쓸 수 있음 class SuperCar(CarMixIn, Performance): def show_info(): print("{}는 {} 속도의 성능입니다.".format(self.name, self.speed)) s = Supe..
(인프런) 파이썬 실전 텔레그램 봇으로 환율, 날씨, 폴더목록, 파일전송 구현하기
import telepot import os import logging #log 라이브러리 from module import get_dir_lsit from module import get_weather from module import mony_transalte logging.basicConfig(level=logging.DEBUG) logger = logging.getLogger(__name__) TELEGRAM_TOKEN ="1773638001:AAEW1PwJjgrvZmSnS_SWq91tK3W-BkYGha0" def handler(msg): content_type, chat_type, chat_id, msg_data, msg_id = telepot.glance(msg, long=True) if co..
(인프런) 파이썬 실전 텔레그램 봇 만들기 기초
import telepot TELEGRAM_TOKEN ="1773638001:AAEW1PwJjgrvZmSnS_SWq91tK3W-BkYGha0" def handler(msg): content_type, chat_type, chat_id, msg_data, msg_id = telepot.glance(msg, long=True) print(msg) if content_type =="text": bot.sendMessage(chat_id, "[반사] {}".format(msg["text"])) bot=telepot.Bot(TELEGRAM_TOKEN) bot.message_loop(handler, run_forever=True)
( 인프런) 파이썬 실전 마그넷 크롤링 해서 자동 검색기 만들기
import re import requests from bs4 import BeautifulSoup import re results = [] def search_google(keyword, start_page, end_page = None): url = "https://www.google.com/search?q={0}+magnet%3A%3Fxt%3D&oq={0}+magnet%3A%3Fxt%3D".format(keyword) #user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36 header = {"user-agent" : "Mozil..
(인프런) 파이썬 실전 핫딜이 뜨면 카톡으로 알려주는 프로그램 만들기
import re import requests from bs4 import BeautifulSoup import json import time def send_kakao(text): KAKAO_TOKEN = "" header = {"Authorization" : "Bearer " + KAKAO_TOKEN} url = "https://kapi.kakao.com/v2/api/talk/memo/default/send" post = { "object_type": "text", "text": text, "link": { "web_url": "https://developers.kakao.com", "mobile_web_url": "https://developers.kakao.com" }, "button_title"..
(인프런) 실전 파이썬 영어기사 크롤링해서 영어단어게임 만들기
from math import trunc import requests from bs4 import BeautifulSoup import re ##정규식 라이브러리 (따로 검색해서 공부해보자) import os import json import random from requests.api import get ##사이트를 파싱해오기 url = "https://www.usatoday.com" r = requests.get(url) bs = BeautifulSoup(r.text, "lxml") lists = bs.select(".gnt_m_th_a") ##뉴스기사 읽어오기 def get_news(): for li in lists: href = url + li["href"] r = requests.get(href..
(인프런) 파이썬 실전 네이버 블로그 검색 결과 크롤링 하기
from re import S import requests from bs4 import BeautifulSoup def get_search_naver_blog(query, start_page=1, end_page=None): #11 = (2-1)*10+1 #21 = (3-1)*10+1 start = (start_page-1)*10+1 query = "파이썬강좌" url = "https://search.naver.com/search.naver?where=view&query={}&start={}".format(query, start) r= requests.get(url) bs= BeautifulSoup(r.text, "lxml") lis = bs.select("li.sh_blog_top") # 41-50 /..
(인프런) 파이썬 실전 네이버영화평점 크롤링 하기
import requests from bs4 import BeautifulSoup def get_movie_point(start, end=1): results = [] for i in range(start, end+1): url = 'https://movie.naver.com/movie/point/af/list.nhn?&page={}'.format(i) r = requests.get(url) bs = BeautifulSoup(r.text, "lxml") trs = bs.select("table.list_netizen > tbody > tr") for tr in trs: #다수의 평점 number = tr.select_one("td.ac.num").text writer = tr.select_one("td...
(인프런) 파이썬 실전 네이버 검색어 크롤링 하기
import requests from bs4 import BeautifulSoup import time def time_function(f): def wrapper(*args, **kwargs): start_time = time.time() result = f(*args, **kwargs) end_time = time.time() - start_time print("{} {} time {}".format(f.__name__, args[1], end_time)) return result return wrapper @time_function def r_fild_all(url, parser): r = requests.get(url) bs = BeautifulSoup(r.text, parser) lists = ..
(인프런) 파이썬 실전 requests, requests_html, beautifulsoup
''' 크롤링을 해보자 1. 원하는 웹페이지에 접속하여 HTML 데이터를 받아온다 2. 받아온 HTML 데이터를 분석가능한 형태로 가공한다 3. 원하는 데이터를 추출한다. ''' ##파이썬 라이브러리를 사용하면됨! ##내장 라이브러리는 성능이 별로.. import requests from requests_html import HTMLSession from bs4 import BeautifulSoup ##데이터를 받아오는 방법 response = requests.get('https://www.naver.com') # print(response.status_code) # print(response.headers) # print(response.content) ##디코딩이 되지 않은 것 print(respon..