3-13_์›น์Šคํฌ๋ž˜ํ•‘ ๊ฒฐ๊ณผ ์ €์žฅํ•˜๊ธฐ

2023. 11. 27. 08:34ยท[WEB & AI]/์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ_์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜
728x90
๋ฐ˜์‘ํ˜•

โ… . ์ด๋ฒˆ ํšŒ์ฐจ ํ•™์Šต ๋ชฉํ‘œ (goal)


1. ๋ฐฐ์šฐ๊ณ ์ž ํ•˜๋Š” ๊ฒƒ

  • ํฌ๋กค๋งํ•œ ์˜ํ™”, ์ˆœ์œ„, ์ œ๋ชฉ, ๋ณ„์ , ์„ DB ์— ๋„ฃ๊ธฐ



 


โ…ก. ํ•ด๋ณด๊ธฐ


1. ํฌ๋กค๋งํ•œ ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ

๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ๐Ÿ˜ฅ ๊ทผ๋ฐ ์ด๊ฒŒ ์ž‘๋™ ์•ˆ ํ•ด
โญโญโญโญโญโญโญโญโญโญโญ ๊ทผ๋ฐ ์ฃผ์„์€ ์ดํ•ดํ•˜๋Š”๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์„๊ฑฐ ๊ฐ™์€๋ฐ

import requests
from bs4 import BeautifulSoup

# URL์„ ์ฝ์–ด์„œ HTML๋ฅผ ๋ฐ›์•„์˜ค๊ณ ,
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.naver?sel=pnt&date=20210829',headers=headers)

# HTML์„ BeautifulSoup์ด๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•ด ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์šฉ์ดํ•œ ์ƒํƒœ๋กœ ๋งŒ๋“ฆ
soup = BeautifulSoup(data.text, 'html.parser')

# select๋ฅผ ์ด์šฉํ•ด์„œ, tr๋“ค์„ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
movies = soup.select('#old_content > table > tbody > tr')

# movies (tr๋“ค) ์˜ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฆฌ๊ธฐ
for movie in movies:
# movie ์•ˆ์— a ๊ฐ€ ์žˆ์œผ๋ฉด,
a_tag = movie.select_one('td.title > div > a')
if a_tag is not None:
rank = movie.select_one('td:nth-child(1) > img')['alt'] # img ํƒœ๊ทธ์˜ alt ์†์„ฑ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ธฐ
title = a_tag.text # a ํƒœ๊ทธ ์‚ฌ์ด์˜ ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ
star = movie.select_one('td.point').text # td ํƒœ๊ทธ ์‚ฌ์ด์˜ ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ
print(rank,title,star)

ํฌ๋กค๋งํ•œ ๊ณณ์— db ์—…๋กœ๋“œ ์ž‘์„ฑํ•˜๊ธฐ

  1. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ๊ธฐ๋ณธ ์ฝ”๋“œ ๋„ฃ์–ด์ฃผ๊ธฐ
from pymongo import MongoClient
# mongoDB ํ™ˆํŽ˜์ด์ง€์—์„œ ๊ฐ€์ ธ์™€์•ผ ํ•˜๋Š” ๋ถ€๋ถ„ โœ… 
client = MongoClient('mongodb+srv://test:sparta@cluster0.qsaohhz.mongodb.net/?retryWrites=true&w=majority')  
db = client.dbsparta
  1. ๋ฐ‘์— pymongo ๋„ฃ๋Š” ์ฝ”๋“œ ์ž‘์„ฑ
doc = {
    'title' : title, 
    'rank' : rank,
    'star' : star
}

db.movies.insert_one(doc)
  • ์ฝ์–ด๋ณด๊ธฐ

์ด document ๋ฅผ ๋„ฃ์–ด์ค„๊ฑฐ์•ผ
์ด๊ฑด '๋”•์…”๋„ˆ๋ฆฌ' ํ˜•ํƒœ๋กœ ์จ์•ผ ํ•ด
value ์ธ title ๋ณ€์ˆ˜๋ฅผ ๋ชฝ๊ณ  db ์—์„œ title ๋กœ ์ €์žฅํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ

db.movies.insert_one(doc) ์ฝœ๋ ‰์…˜ ์ด๋ฆ„์„ movies ๋กœ ํ•ด์„œ ๋„ฃ๋Š”๋‹ค! ์ข€ ๋” ์ƒˆ๋กญ๊ฒŒ

  • ๊ฒฐ๊ณผ๋ฌผ

์˜ค ๋“ค์–ด๊ฐ„๋‹ค
์‹ ๊ธฐํ•˜๋‹ค

728x90
๋ฐ˜์‘ํ˜•
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'[WEB & AI] > ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ_์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

3-15_ 3์ฃผ์ฐจ ๋ & ์ˆ™์ œ ์„ค๋ช…  (1) 2023.11.28
3-14_ Quiz_์›น์Šคํฌ๋ž˜ํ•‘ ๊ฒฐ๊ณผ ์ด์šฉํ•˜๊ธฐ  (2) 2023.11.28
3-12_pymongo๋กœ DB์กฐ์ž‘ํ•˜๊ธฐ  (1) 2023.11.26
3-11_mongoDB ์—ฐ๊ฒฐํ•˜๊ธฐ  (0) 2023.10.16
3-10_mongoDB ์‹œ์ž‘ํ•˜๊ธฐ  (0) 2023.10.16
'[WEB & AI]/์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ_์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • 3-15_ 3์ฃผ์ฐจ ๋ & ์ˆ™์ œ ์„ค๋ช…
  • 3-14_ Quiz_์›น์Šคํฌ๋ž˜ํ•‘ ๊ฒฐ๊ณผ ์ด์šฉํ•˜๊ธฐ
  • 3-12_pymongo๋กœ DB์กฐ์ž‘ํ•˜๊ธฐ
  • 3-11_mongoDB ์—ฐ๊ฒฐํ•˜๊ธฐ
๋ถ€์‹œ๋งค๋‚˜_HA
๋ถ€์‹œ๋งค๋‚˜_HA
๐ŸŒ„ ๋งˆ์Œ์ฑ™๊น€ | ๐Ÿฆพ ์—ฐ์Šต | ๐Ÿฑ‍๐Ÿ Creator | ๐Ÿ“š[stackList] Nodejs, React, Three.js, Javascript, Blockchain, Blender, Unreal, Unity, Python, AI prompting
    ๋ฐ˜์‘ํ˜•
    250x250
  • ๋ถ€์‹œ๋งค๋‚˜_HA
    Hello creators ๐Ÿ™Œ
    ๋ถ€์‹œ๋งค๋‚˜_HA
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (221)
      • [ํ”„๋ก ํŠธ์—”๋“œ(FE) ๊ฐœ๋ฐœ] (feat. ์ฃผ๋‹ˆ์–ด) (8)
        • TIL (4)
        • React Hook Form (2)
        • Git (Github, Gitlab) (1)
      • [WEB & AI] (75)
        • Next YTMusic ํด๋ก  ์ฝ”๋”ฉ (with ne.. (0)
        • ํ”„๋ก ํŠธ&๋ฐฑ์—”๋“œ (15)
        • ์ฝ”๋”ฉ์• ํ”Œ (1)
        • JavaScript (0)
        • ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ_์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜ (44)
        • ๋ธ”๋ก์ฒด์ธ ๊ฐœ๋ฐœ์ž ๊ณผ์ •_KGA (7)
        • ์•Œ๊ณ ๋ฆฌ์ฆ˜&์ž๋ฃŒ๊ตฌ์กฐ (1)
        • [AI] (0)
        • AI_Art (0)
        • Python (6)
        • [ํšŒ๊ณ ] (1)
      • [3D & 2D ๊ทธ๋ž˜ํ”ฝ์Šค] (133)
        • 2D ์ด๋ฏธ์ง€ (0)
        • ์†๋งต (4)
        • ๋””์ง€ํ„ธ ํŽ˜์ธํŒ… (8)
        • ๋…ธ๋ง๋งต (17)
        • ์–ธ๋ฆฌ์–ผ_์ž…๋ฌธ (43)
        • ์–ธ๋ฆฌ์–ผ_์ค‘๊ธ‰ (12)
        • ์–ธ๋ฆฌ์–ผ_PBL (1)
        • ์”จํฌ๋””, C4D (2)
        • ์„ญ์Šคํ„ด์Šค (18)
        • ๋งฅ์Šค, 3ds Max (19)
        • World Machine (1)
        • ์ง€๋ธŒ๋Ÿฌ์‰ฌ, Zbrush (6)
        • 3D Coat (2)
        • Unity (0)
      • [๊ธฐํƒ€] (3)
        • [E-Book ์ œ์ž‘] (0)
        • ์ธ๋””์ž์ธ(Indesign) (1)
        • [์ค€๋น„๊ณผ์ •] (1)
      • [์ผ์ƒ] (0)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๊ฐœ๋ฐœ ์ผ์ง€
    ์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜
    3ds Max ๊ฐ•์ขŒ
    ์›น ๊ฐœ๋ฐœ ๊ธฐ์ดˆ
    JavaScript
    3d ๋งฅ์Šค ์ž…๋ฌธ ๊ฐ•์˜
    ๋ฉ”ํƒ€๋ฒ„์Šค ๋ฐฐ๊ฒฝ ๊ฐ•์ขŒ
    3d ๋ฐฐ๊ฒฝ ๋””์ž์ธ ๊ฐ•์ขŒ
    ์›น ๊ฐœ๋ฐœ ๊ฐ•์˜
    ๋ฉ”ํƒ€๋ฒ„์Šค ํฌ๋ฆฌ์—์ดํ„ฐ ์ž…๋ฌธ
    ๋ฉ”ํƒ€๋ฒ„์Šค ๋ฐฐ๊ฒฝ ์ž…๋ฌธ
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
    ๊ฐœ๋ฐœ ํšŒ๊ณ 
    ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ
    ์–ธ๋ฆฌ์–ผ ๊ฐ•์ขŒ
    ๊ฐœ๋ฐœ ๊ฐ•์˜ ์ถ”์ฒœ
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ดˆ
    ๋ฐฐ๊ฒฝ ๋ชจ๋ธ๋ง ๊ฐ•์˜
    css
    ์–ธ๋ฆฌ์–ผ 4
    3D ๋ชจ๋ธ๋ง ์ž…๋ฌธ
    3d ๋ฐฐ๊ฒฝ ๋””์ž์ธ ์ž…๋ฌธ
    ์ˆ˜์—… ๋ฆฌ๋ทฐ
    ๊ฐœ๋ฐœ์ž ์ปค๋ฆฌํ˜๋Ÿผ
    3ds Max ์ž…๋ฌธ
    ๊ฐœ๋ฐœ์ž ๊ฐ•์˜ ์ถ”์ฒœ
    3D ๋ชจ๋ธ๋ง ๊ฐ•์˜
    ๊ฐœ๋ฐœ์ž ๊ธฐ์ดˆ ๊ฐ•์˜ ์ถ”์ฒœ
    ์›น๊ฐœ๋ฐœ์ข…ํ•ฉ๋ฐ˜ ํ›„๊ธฐ
    ๋ฉ”ํƒ€๋ฒ„์Šค ํฌ๋ฆฌ์—์ดํ„ฐ ๊ฐ•์ขŒ
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
๋ถ€์‹œ๋งค๋‚˜_HA
3-13_์›น์Šคํฌ๋ž˜ํ•‘ ๊ฒฐ๊ณผ ์ €์žฅํ•˜๊ธฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”