1) 삭제기능
@app.route("/delete", methods=["POST"])
def members_delete():
name = request.form['name_give']
print(name)
db.members.delete_one({'name':name})
return jsonify({'msg': '삭제 완료!'})
나는 app.py 파일에
@app.route("/delete", methods=["POST"])
이 코드에서 '/' 뒤에 들어가는 글자가 DB를 뜻하는 줄 알았는데, DB 콜렉션에 같은 이름이 없었다.
function del(a) {
let name = a
let formData = new FormData();
formData.append("name_give", name);
fetch('/delete', {method: "POST", body: formData,}).then((res) => res.json()).then((data) => {
console.log(data);
alert(data["msg"]);
window.location.href = '/'
}
)
}
그런데 이 코드에서 fetch 뒤에 있는 '/delete'를 보고 스크립트랑 연결시켜주려고 그런거구나 알게됨
웹개발 종합반에선 num으로 받아서 이 코드에서도 그렇게 시도해보려고 했는데, 그냥 give있는 것중에서 골라서 하면 됨
주말에 해볼것: name_give 말고 commet_give로 삭제 기능 구현해보기
2) 웹 크롤링
data = requests.get(url_receive)
soup = BeautifulSoup(data.text, "html.parser")
img_tag = soup.select_one("img[src^='https://contents.kyobobook.co.kr/sih/fit-in/']")
img_url = img_tag.get("src")
title_tag = soup.select_one(
"#contents > div.prod_detail_header > div > div.prod_detail_title_wrap > div > div.prod_title_box.auto_overflow_wrap > div.auto_overflow_contents > div > h1 > span")
title_name = title_tag.text
author_tag = soup.select_one(
"#contents > div.prod_detail_header > div > div.prod_detail_view_wrap > div.prod_detail_view_area > div:nth-child(1) > div > div.prod_author_box.auto_overflow_wrap > div.auto_overflow_contents > div > div > a:nth-child(1)")**
author_name = author_tag.text
교보문고 웹크롤링 한것.
이미지, 책 이름, 저자 지칭하는 클래스가 여러 개 div안에 감싸져 있을 경우 select_one()안에 어떻게 넣어야 할지 몰랐다가 알게됨
3) 작성 시간 기록하기
app.py 안에 들어갈 코드
#입력 시간 체크 함수
import time
time_receive = (time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
doc = {
'time': time_receive
}
4) 검색창 기능
<div class="search" style="margin-bottom: 20px; margin: 0px auto; text-align: center; ">
<form action="https://search.kyobobook.co.kr/search?keyword=" method="GET" target="_blank">
<input placeholder="독서록 쓰고 싶은 책을 검색해 주세요." name="keyword" type="text"
style="width:400px;height: 40px; border: 1px solid #B68A30; border-radius: 10px; margin-right: 5px; font-family: 'GangwonEdu_OTFBoldA';">
<button style="width: 60px; height: 40px;background-color:#B68A30; color:white; border-radius: 10px;border-color: transparent;font-family: 'GangwonEdu_OTFBoldA'; ">
검색
</button>
</form>
</div>
책 제목이나 저자 입력하면 교보문고 검색창에 검색되는 기능 만들기.
가장 쉬웠다..ㅎㅎㅎ