3주차 웹코딩

말로우밀랭·2022년 6월 7일
0

웹 배우기

목록 보기
5/5

다른 언어들에 비해 직관적인 언어를 사용하는 것이 파이썬이다.

: 표시가 있고 enter를 치면 그 밑에 줄들은 위 함수들의 내용들이 된다
tap이 된 단락은 그 함수안에 포함된 내용으로 받아들인다.

import requests # requests 라이브러리 설치 필요

r = requests.get('http://openapi.seoul.go.kr:8088/6d4d776b466c656533356a4b4b5872/json/RealtimeCityAir/1/99')
rjson = r.json()

gus = rjson['RealtimeCityAir']['row']

for gu in gus:
gu_name = gu['MSRSTE_NM']
gu_mise = gu['IDEX_MVL']
if gu_mise > 50:
print(gu_name,gu_mise)

파이썬은 다른 개발자들이 미리 만들어둔 라이브러리가 많아서 파일 세팅에서 검색을 통해 불러와 사용할 수 있다.

<3-9>

import requests
from bs4 import BeautifulSoup

headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get('https://movie.naver.com/movie/sdb/rank/rmovie.nhn?sel=pnt&date=20200303',headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')

trs = soup.select('#old_content > table > tbody > tr')

#old_content > table > tbody > tr:nth-child(2) >

#old_content > table > tbody > tr:nth-child(2) >
#old_content > table > tbody > tr:nth-child(2) > td.point

for tr in trs:
a_tag = tr.select_one('td.title > div > a')
if a_tag is not None:
rank = tr.select_one('td:nth-child(1) > img')['alt']
title = a_tag.text
star = tr.select_one('td.point').text

    print(rank,title,star)

print()로 나오는 값을 확인하고!
내가 찾아야 하는 부분들의 .text나 ['alt']나 등등 을 다시 프린트해서 결과값을 알아낸다!


<3-12>
(robo 3t에서 파이썬 언어 실체화 연습)

insert(데이터넣기) / find(찾기) / update(업데이트) / delete(삭제)

insert

doc = {'name':'bobby','age':21}
db.users.insert_one(doc)

insert는 파일>폴더>insert 형태로 사용한다!

find

same_ages = list(db.users.find({},{'_id':False}))

for person in same_ages:
print(person)

find는 보통 find{} (목록 전부를 불러올 때) 를 자주 사용하고, {' id':False}를 써야 깔끔하게 찾는 값만 나온다.
find{}안에
ist(db.users.find({'age':21},{'
id':False}))
이런식으로 사용하면 해당 조건에 맞는 값들만 나타난다.

update

db.users.update_one({'name':'bobby'},{'$set':{'age':19}})

update_many도 있는데 이건 조건{name:bobby}인 모든 값의 age를 19로 바꾸는 것!(있다는것만 알아두기 잘 안씀 위험)

delete

db.users.delete_one({'name':'bobby'})

delete_many도 있지만 많이 안씀 위험)

스파르타 pymongo 코드요약

#저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)

#한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})

#여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
same_ages = list(db.users.find({'age':21},{'_id':False}))

#바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})

#지우기 - 예시
db.users.delete_one({'name':'bobby'})

movie = db.movies.find_one({'title': '매트릭스'},{'_id':False})['star']
print(movie)

.strip()

공백제거

.text

여기서도 몇번째부터 몇번째까지 보이게 할때 [0:5] 이런식으로 0~5 처럼 표현하기

profile
배워가는 코딩 어린이

0개의 댓글