二手产品经理

二手产品经理

THIS IS RENO

撒花 - 100天 - 在線學python100天

記錄#

百日學習挑戰
今天是最後一天了,在最開始的時候也沒有想到自己能堅持完成這 100 天的學習,最終還是完成了,中間因為各種事情耽誤了不少時間,否則還能再快一些。
從 4 月到 9 月,大約 150 天左右的時間,我收穫了一個基礎的 Python 編程知識。總的感覺下來還是很初級的內容,對 Python 的基本操作有了不少認識。如果想要做一些事情,還是需要再繼續深入學習,下一步該怎麼進行還沒有頭緒。
總之,這個學習階段告一段落了,給自己點一個大大的讚,繼續加油!我已經證明了自己有恒心和毅力,相信通過持續努力,你、我一定能達到更高的目標!
最後一個學習項目是抓取電商網站的商品價格,如果實際價格低於目標價格,那就發送郵件提醒。

CODE#

main.py#

from replit import db
import schedule, time, os, smtplib, requests
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from bs4 import BeautifulSoup

password = os.environ['p']
username = os.environ['u']


def addinfo():
  #url = "https://www.wexphotovideo.com/canon-imageprograf-pro-300-printer-1745230/"
  url = input("URL: ")
  target_price = input("目標價格: ")
  db[time.time()] = {"url": url, "target_price": target_price}


def sendMail(text):
  server = "smtp.gmail.com"
  port = 587
  s = smtplib.SMTP(host=server, port=port)
  s.starttls()
  s.login(username, password)

  msg = MIMEMultipart()
  msg['To'] = "[email protected]"
  msg['From'] = username
  msg['Subject'] = "休息一下"
  msg.attach(MIMEText(text, 'html'))

  s.send_message(msg)
  del msg


def shop():
  if db.keys():
    for key in db.keys():
      url = key["url"]
      target_price=key["target_price"]
  else:
    addinfo()
  respone = requests.get(url)
  html = respone.text
  soup = BeautifulSoup(html, 'html.parser')
  price = soup.find("span", {"class", "price"}).text
  original_price = price.replace("£", "")
  if original_price < target_price:
    text = f" GOGOGO! <a href={url}>購買</a>"
    sendMail(text)



schedule.day(1).hours.do(shop) # 將間隔更改為每1小時

while True:
  schedule.run_pending()
  #print(searchkey())
  time.sleep(1)
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。