Day 047
Udemy Python Bootcamp Day 047
Automated E-mart Price Tracker
Use BeautifulSoup to Scrape the Product Price
import requests
from bs4 import BeautifulSoup
response = requests.get("https://emart.ssg.com/obanjang/main.ssg?myclick=1000040579314&clickIcon=1000040579314#1000040579314")
# print(response.text)
soup = BeautifulSoup(response.content, "html.parser")
result = soup.find(name="span", class_="obj_price_num ssg_price")
product_price = result.getText().split(",")
price = int(product_price[0] + product_price[1])
아마존페이지는 robot인지 체크?하는 것 때문인지 값추출이 안됐음..
질의응답 보니까 다들 그냥 건너뛰어서 다음 section에서 selenium배우라고 하고,
아니면 월마트 ㅋㅋㅋ에서 하니까 금방 했다고 하길래
월마트 들어가봤더니 아마존이랑 똑같이 나오길래 혹시나..?하고 이마트로 했더니 바로 되는겨,,
다만 가격 중간에 ,
가 들어가서 조금 코드가 안예쁘긴 하지만,,
이 방법말고 다른 방법 있으려나..?
Email Alert When Price Below Preset Value
import smtplib
MY_EMAIL = "**********@yahoo.com"
MY_PASSWORD = "*********"
if price < 10000:
with smtplib.SMTP("smtp.mail.yahoo.com") as connection:
connection.starttls()
connection.login(MY_EMAIL, MY_PASSWORD)
connection.sendmail(
from_addr=MY_EMAIL,
to_addrs="*************@gmail.com",
msg=f"Subject:Price Alert\n\nThe price is {product_price[0]},{product_price[1]}won now!"
)
smtp는 손쉽게 했구,, 근데 사실 smtp는 msg
내용만 달라지는 거라 다른 플젝에서 복붙해서 쓰는데,,
사실 복붙 안하고 생으로 쓰라고 하면 못쓸거 같긴함.. 이 습관 고치긴 해야하는데,,
암튼 로봇인지 체크안하는 이마트 덕에 손쉽게 플젝 마무리했는데
다음 section에서 selenium배워서 아마존 다시 해보는걸로 합시다.
Author And Source
이 문제에 관하여(Day 047), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@awesomee/Day-047저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)