์ค๋์ ์์ฑํ ์์ฑํ AI๋ฅผ ํ์ฉํ ํฌ๋กค๋ง ๋ฐฉ๋ฒ์ ๋ํด ์๊ฐํด๋ณด๋ ค๊ณ ํฉ๋๋ค~!!
1. ์์ฑํ AI
๋จผ์ ์์ฑํ AI๋ ์ ์๊ณ ์๋ chat gpt๋ถํฐ ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์๋ค.
- OpenAI ChatGPT : https://chatgpt.com/
- Claude : https://claude.ai/chats
- ๐ Perplexity : https://www.perplexity.ai/
- Bingchat : https://www.microsoft.com/en-us/edge/features/bing-chat
- gemini : https://gemini.google.com/
- ๋คผํผ : https://wrtn.ai/
- Liner : https://getliner.com/ko
- AskUp : https://pf.kakao.com/_BhxkWxj
์ฌ๊ธฐ์ ์น์คํฌ๋ํ์ ํ ๋ ์ต์ ํ ๋์ด์๋๊ฑด perplexity๋ผ๊ณ ์ฐ์ฌ๋์ด ๊ฐ.์กฐ.ํ์ จ๋ค.
2. chat GPT๋ก ์น์คํฌ๋ํ ํ๋ก์ธ์ค ๋์ํ ํด๋ณด๊ธฐ
๋ค์๊ณผ ๊ฐ์ ํ๋กฌํํธ๋ฅผ ์์ฑํ์ฌ chatGPT์ ๋ช ๋ น์ ๋ด๋ฆฌ๋ฉด mermaid ์ฝ๋๋ฅผ ์๋ ค์ค๋ค. (์๊ฐํ ํด)
์น ์คํฌ๋ํ ๊ณผ์ ์ 10๊ฐ์ง ๋จ๊ณ๋ก ๋์ดํ๊ณ ์๋๋ ๊ณผ์ ์ ๋ํ ํผ๋๋ฐฑ์ ์ถ๊ฐํด์ ์์ฑํ ๊ฒ.
์ ๊ณผ์ ์ mermaid ์ฝ๋๋ก ์์ฑํด์ค
chatGPT๊ฐ ์๋ ค์ค ์ฝ๋๋ฅผ ์ข์ธก์ ์ ๋ ฅํ๋ฉด ์น ์คํฌ๋ํ ๊ณผ์ ์ ๋์ํ ํด์ค๋ค.
๋ฐํ์๋ฃ ๋ง๋ค๋๋, ์ด๋ฐ ํ๋ก์ธ์ค ๊ทธ๋ฆผ์ ๋ง๋ค๋ ํธํ๊ฒ ๋ง๋ค ์ ์์!
3. ์ด์ปค๋จธ์ค ๋ฐ์ดํฐ ํฌ๋กค๋ง ํด์ค๊ธฐ
ํจํค์ง ๋ค์ด ์ด์๋ก colab ํ๊ฒฝ์์ ์ฝ๋ ์์ฑ.
ํฌ๋กค๋ง ์ฌ์ดํธ๋ ์ข์ํ๋ ํจ์ ํ๋ซํผ์ธ 29cm ์ฌ์ฑ์๋ฅ ์นดํ ๊ณ ๋ฆฌ ํ๋ฉด์ด๋ค.
๋ฒ ์คํธ - ๊ฐ๋ ๊น์ ์ทจํฅ ์ ๋ ํธ์ต 29CM
ํจ์ , ๋ผ์ดํ์คํ์ผ, ์ปฌ์ฒ๊น์ง 29CM๋ง์ ๊ฐ๋ ๊น์ ์ ๋ ์ ์ ๋ง๋๋ณด์ธ์.
shop.29cm.co.kr
3-1) ์ฌ์ดํธ์ ์ ์ํ์ฌ option+command+i๋ฅผ ์ ๋ ฅํ๋ฉด ๊ฐ๋ฐ์ ๋๊ตฌ๋ก ์ ์๋๋ค.
์๋จ์ networkํญ์ ๋ค์ด๊ฐ์ ๋ชจ๋ ๊ฐ์ ์ง์ฐ๊ณ ์๋ก๊ณ ์นจ
3-2) ํฌ๋กค๋ง ํ๊ณ ์ํ๋ ๋ฐ์ดํฐ๊ฐ ๋ค์ด์๋ name์ ์ฐพ๋๋ค.
(์ด ๊ณผ์ ์ด ์ ์ผ ์ค์ํ๊ณ preview๋ฅผ ๋ณด๋ฉด์ ๋ณด๋ฉด ์ข ๋ ์ฐพ๊ธฐ ์ฝ๋ค)
3-3) headers, payload, response ํ๊ฐ์ง ๋ณต์ฌํด๋ ๊ฒ
3-4) ํ๋กฌํํธ ์์ฑ
๋ค์ ์ ๋ณด๋ฅผ ์ฐธ๊ณ ํด์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ํ์ด์ฌ ์ฝ๋๋ฅผ ์์ฑํ๊ณ ๋ฐ์ดํฐ๋ sqlitedb์ "29cm"์ด๋ฆ์ผ๋ก ์ ์ฅํ๊ณ ํ๋ค์ค๋ก ์ฝ์ด์์ ํ์ธํ๋ ์ฝ๋๊น์ง ์์ฑํ ๊ฒ.
์ด๋ผ๋ ํ๋กฌํํธ์ ํจ๊ป 3)์์ ๋ณต์ฌํด๋ ๊ฐ์ ๋ฃ์ด์ฃผ์ด ํ๋กฌํํธ๋ฅผ ์์ฑํด์ค๋ค
[ํ๋กฌํํธ]
๋ค์ ์ ๋ณด๋ฅผ ์ฐธ๊ณ ํด์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ํ์ด์ฌ ์ฝ๋๋ฅผ ์์ฑํ๊ณ ๋ฐ์ดํฐ๋ sqlitedb์ "29cm"์ด๋ฆ์ผ๋ก ์ ์ฅํ๊ณ ํ๋ค์ค๋ก ์ฝ์ด์์ ํ์ธํ๋ ์ฝ๋๊น์ง ์์ฑํ ๊ฒ.
Request URL: https://recommend-api.29cm.co.kr/api/v4/best/items?categoryList=268100100&periodSort=NOW&limit=100&offset=0 Request Method: GET Status Code: 200 OK Remote Address: 15.164.247.68:443 Referrer Policy: strict-origin-when-cross-origin
categoryList: 268100100 periodSort: NOW limit: 100 offset: 0
{ "result": "SUCCESS", "data": { "content": [ { "itemNo": 2163860, "itemName": "[29CM ๋จ๋ ] CLASSIC TWEED JACKET MELANGE GREY_UDJA4C203G2", "itemDescription": null, "imageUrl": "/item/202408/11ef5a216b184cfb8362158ed367c2eb.jpg", "frontBrandNo": 13310, "frontBrandNameKor": "๋์คํธ", "frontBrandNameEng": "DUNST", "consumerPrice": 289000, "lastSalePrice": 228888, "lastSalePercent": 21, "heartCount": 11372, "heartOn": false, "reviewCount": 228, "reviewAveragePoint": 5.0, "isCoupon": true, "isFreeShipping": false, "isNew": false, "isSoldOut": false, "subjectDescriptions": [ "[๋ฒ ์คํธ์ค๋ -9/1]" ], "saleInfoV2": { "consumerPrice": 289000, "sellPrice": 260100, "saleRate": 10, "couponSaleRate": 12, "isCoupon": true, "totalSellPrice": 228888, "totalSaleRate": 21 }, "frontCategoryInfo": [ { "category1Code": 268100100, "category1Name": "์ฌ์ฑ์๋ฅ", "category2Code": 268102100, "category2Name": "์์ฐํฐ", "category3Code": 268102104, "category3Name": "์ฌํท" }, { "category1Code": 268100100, "category1Name": "์ฌ์ฑ์๋ฅ", "category2Code": 268116100, "category2Name": "EXCLUSIVE", "category3Code": 268116103, "category3Name": "์์ฐํฐ" } ] },
[์์ฑํด์ค python ์ฝ๋]
import requests
import pandas as pd
import sqlite3
import json
def fetch_data():
url = "https://recommend-api.29cm.co.kr/api/v4/best/items"
params = {
"categoryList": "268100100",
"periodSort": "NOW",
"limit": 100,
"offset": 0
}
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
response = requests.get(url, params=params, headers=headers)
data = response.json()
return data['data']['content']
# ๋ฐ์ดํฐ ์์ง
items = fetch_data()
# DataFrame ์์ฑ
df = pd.DataFrame(items)
# ํ์ํ ์ปฌ๋ผ๋ง ์ ํ
columns_to_keep = [
'itemNo', 'itemName', 'frontBrandNameKor', 'frontBrandNameEng', 'consumerPrice',
'lastSalePrice', 'lastSalePercent', 'heartCount', 'reviewCount', 'reviewAveragePoint',
'isCoupon', 'isFreeShipping', 'isNew', 'isSoldOut'
]
df = df[columns_to_keep]
# SQLite ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ
db_filename = '29cm.db'
conn = sqlite3.connect(db_filename)
df.to_sql('best_items', conn, if_exists='replace', index=False)
conn.close()
# ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ ์ฝ์ด์ค๊ธฐ
conn = sqlite3.connect(db_filename)
df_from_db = pd.read_sql_query("SELECT * FROM best_items", conn)
conn.close()
# ๊ฒฐ๊ณผ ํ์ธ
print(df_from_db.head())
print(f"\n์ด {len(df_from_db)} ๊ฐ์ ์ํ ๋ฐ์ดํฐ๊ฐ ์์ง๋์์ต๋๋ค.")
๋ค์ ์ฝ๋๋ฅผ ์คํ์ํค๋ฉด ๋ฐ์ดํฐ๊ฐ ์ ์์ง๋ ๊ฒ์ ํ์ธํ ์ ์๊ณ , ์ ๋ฐ์ดํฐ๋ฅผ .db ํ์ฅ์๋ก ์ ์ฅ๊น์ง ํ๋ค๋ฉด?
ํด๋น ์ฌ์ดํธ์์ db๋ฅผ ์ค์นํ์ง ์์๋ ์น์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ํ์ธํด๋ณผ ์ ์๋ค.
SQLite Viewer Web App
SQLite Viewer Web App SQLite Viewer Web is a free, web-based SQLite Explorer, inspired by DB Browser for SQLite and Airtable. Use this web-based SQLite Tool to quickly and easily inspect .sqlite files. Your data stays private: Everything is done client-sid
sqliteviewer.app
์ํ์ฐฉ์ค๋ ๋ง์์ง๋ง ํ๋ฒ ์ฑ๊ณตํด๋ณด๊ณ ๋๋, ์ ๋ง ํธ์ํ ๋๊ตฌ๋ผ๋ ๊ฒ์ ์ค๊ฐํ๊ฒ ๋๋ค.
3๋ ์ ์ ๊ณต๋ชจ์ ์ ์ํด ํฌ๋กค๋ง์ ํ ๋๋ง ํ๋๋ผ๋, ๋จธ๋ฆฌ๋ฅผ ์ธ๋งค๊ณ ์ฝ๋ ์ค๋ฅ๋ฅผ ํด๊ฒฐํ์๋๋ฐ ..! ์ด์ ์ฝ๋๋ฅผ ์ง์ ์ง์ง ์์๋! ์ด๋ ๊ฒ ์์ฑํ AI๋ก ์ฝ๊ฒ ํฌ๋กค๋ง์ ํ ์ ์๋ค๋,, ์์ธํ๋ฉด์๋ ๋น ๋ฅด๊ฒ ๋ณํ๋ ์ธ์์ ๋น ๋ฅด๊ฒ ์ ์ํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ ๋ค!
*ํ์ด์ฌ ์ปค๋ฎค๋ํฐ PyLadies์์ ์ฃผ๊ดํ ์ธ๋ฏธ๋์์ ๊ต์ก๋ฐ์ ๋ด์ฉ์ ๋๋ค
โจ ์์ฑํ AI์ Python์ ํ์ฉํ ์น ์คํฌ๋ํ: ์ค์ตํ๊ณ ๊ฒฝํ ๋๋๊ธฐ โจ, 2024๋ 8์ 24์ผ (ํ ) ์คํ 1:0
# โจ ์์ฑํ AI์ Python์ ํ์ฉํ ์น ์คํฌ๋ํ: ์ค์ตํ๊ณ ๊ฒฝํ ๋๋๊ธฐ โจ ์๋ ํ์ธ์! ์ง๋ ๋ฒ ์กฐ์๋์ด ๋ฐํํด์ฃผ์ ์น ์คํฌ๋ํ ์ธ๋ฏธ๋์์ ๋จ๊ฑฐ์ด ๊ด์ฌ์ ๋ฐ์, ์ง์ ์ค์ตํ๊ณ ๊ฒฝํ์ ๋๋ ์ ์
www.meetup.com