kuri
kuri
🏅 AI 마스터
📹 SNS 찐친

문과생도 AI 3주차 과제

3주차 과제 #1: Selenium 미션

1. 네이버 접속

2. 검색창에 원하는 검색어 입력

3. 검색 버튼 클릭


1. 일단 py 파일을 만들고, 배운대로 기본형 예제코드를 복사합니다.

과제를 완성하려면 코드의 "my-text",, 즉 네이버 검색창에 해당하는 값을 찾아야 합니다.


2. 네이버로 접속해서 배운 그대로 F12 눌러 소스창 엽니다.

이때 마우스 포인터를 검색창 주변으로 이리저리 옮기면 소스창에 해당 부분이 강조되기 때문에 필요한 코드를 찾기 쉬워집니다.


3. '검색창'에 해당하는 코드를 찾았으면, '오른 쪽 클릭'하고 'Copy', 그리고는 'Copy selector'를 선택합니다.

이 값을 위의 1번에 해당하는 부분에 붙여넣습니다.


4. 예제 코드를 대충 수정하고, 복사된 selector 값을 붙여넣습니다.

그리고, 검색어에는 제 아이디인 kuri를 넣었습니다.


5. 다시 돌려봅니다.

잘 되는군요....훗, 제가 이렇게 코딩에 재주가 있는 줄 몰랐습니다.

그러면서 이번에는 검색어를 한글 아이디인 '쿠리'로 다시 돌렸습니다.

그랬더니...

한국어를 검색어로 인식을 못하는 거였습니다. 이런 된장...


6. 몇 번의 에러수정 후에도 계속 에러가 나길래, 코드를 가만히 들여다 보니, 왜 CSS selector 값이 "body"일까 궁금해 집니다.

다시 확인해 보니, 네이버 사이트에 접속하면 디폴트로 검색창에 입력이 가능하고 그냥 엔터키만 쳐도 검색이 되는 구조군요. 다시 말하자면, 웹 사이트의 '본문 (body)' 영역에다가 검색어를 넣고 있었다고 이해했습니다.

7. 그래서 챗지한테 물어보니, 어쩌고 저쩌고 답을 주긴 줍니다만, 이걸 읽으면서도 이해도 안가고, 읽으니 더 정신만 복잡해 집니다.

그래도 온갖 역경과 고난에 굴하지 않고, 계속 묻다보니 한 부분이 눈에 띄는군요.

“형님, 검색창에 오른 클릭하시고, 그 다음에 'Inspect'이나 'Inspect Element'해 보세요.”

8. 검색창에 오른 클릭을 하고나니, 소스창에 정확한 코드의 위치가 나오는군요.


9. 이 부분을 다시 '오른 쪽 클릭'하고 'Copy', 그리고는 'Copy selector'를 선택했습니다. 그리고 파이썬 코드에서 해당하는 부분에 붙여넣습니다.

CSS selector 값은 '#query'였네요…전 ‘kuri’
아재개그 죄송합니다. ㅠㅠ


10. 마지막으로 다시 확인하니, 영문은 물론이고 한글검색도 가능하다는 것 확인했습니다.


공유하고 싶은 내용:

소스창을 열어놓고 단순히 마우스 포인터를 움직이면서 해당 소스코드를 찾기 보다는, 원하는 지점에서 오른쪽 클릭으로 더 정확한 위치를 확인할 수 있다는 점입니다.

저처럼 헤매지 마시고 '콕' 찍어 찾아보시기 바랍니다. ^^


3주차 과제 #2: Streamlit 미션

과제 자체는 "BMI 계산기 만들기"였습니다.

1. 사용자로부터 이름, 나이, 성별을 추가로 입력받으세요.

2. BMI 계산 결과와 함께 사용자의 이름, 나이, 성별을 출력하세요.

3. BMI에 따른 체중 범위를 시각적으로 표현해주세요.

4. 사용자가 입력한 데이터를 파일로 저장할 수 있는 기능을 추가하세요.

5. 사용자 친화적인 인터페이스를 위해 `st.expander()`를 사용하여 "도움말" 섹션을 추가하세요.


  1. 사용자로부터 입력값 받는 부분부터 대충 짜내려가고 있었습니다.

```import streamlit as st  

st.title("Streamlit BMI 계산기 과제")  
st.header("정확히 기입해 주실 수록 정확한 결과를 얻을 수 있습니다")  

st.write("Streamlit을 이용해 체질량을 계산하겠습니다")  
name = st.text_input("이름을 입력하세요: ", "")  
age = st.number_input("나이를 입력해 주세요: ","")  
  
options = ['남성','여성']  
sex = st.radio_input("성별을 선택해 주세요: ", options)  
height = st.number_input("키를 입력해 주세요: ","")  
weight = st.number_input("몸무게를 입력해 주세요: ", "")    

# BMI 계산  
if st.button("모두 입력하셨으면 버튼을 눌러주세요"):  
	result=weight/((height/100)**2)  
st.write(f."{name}님은 {age}세의 {sex}이고, BMI 지수는 {result}입니다.")  

st.progress(result)
.
.
.
.


  1. 그런데, 이게 “사용자의 체중범위를 시각적”...여기부터 정신이 아득한 안드로메다로...

물론, 챗지나 클로한테 물어보면 당연히 예쁜 코드 좍좍 뽑아주긴 하더군요.
파이썬으로 코딩을 시킬 때는 아예 제 능력 밖의 주문을 하는거라 그랬을까요? 아니면 앞의 셀레니움 과제하느라 에너지가 쪽 빠져버려서 그럴까요?

그동안은 복잡한 코드 짜달라고 해도 별 죄책감이 그냥 그러려니 했는데, 스트림릿의 경우는 내용을 좀 알아야 하지 않을까 싶더군요.
그런데 이과생임에도 불구하고 코드를 모르는 저에게는 역시 너무 어렵습니다. ㅠㅠ

그래서 두 번째 과제는 챗지가 짜준 코드로 실행한 스샷으로 대신하겠습니다.

대신, 클로에게 해당 정답 파일을 알려주고 내용과 사용법을 설명해 달라고 한 후에 정답코드에 대해 공부하는 방식으로 풀었습니다.

대화링크: https://claude.ai/chat/bdb68ec5-a296-481a-871f-d14121607f3f



B급감성 야매킹, kuri였습니다.

1
1개의 답글
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 오후,
읽고 바로 써먹을 AI 소식만