最近在自如看房,找到中意的房子,房源却是待释放,写了一个很辣鸡的代码放服务器上替我观察。
我们将根据这两个标签的内容来判断关注的房源是否可以签约。
# -*- coding:utf-8 -*-
import requests
import time
url = 'http://www.ziroom.com/x/611123529.html'
headers = {
'Referer':'http://hz.ziroom.com/',
'Upgrade-Insecure-Requests':'1',
'User-Agent':'Mozilla/5.0(WindowsNT6.3;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/68.0.3440.106Safari/537.36'
}
import smtplib
from email.mime.text import MIMEText
mail_user="*****@vip.163.com" #发送邮件的邮箱
mail_pass="*****" #密码,口令
mailto_list="*****@qq.com" #接受邮件的邮箱
mail_host="smtp.vip.163.com" #设置服务器 例:smtp.126.com
strstr='你好,房子能签约啦' #内容
msg = MIMEText(strstr,'plain','utf-8') #邮件类型设置为plain
msg['Subject'] = "主题" #主题
msg['From'] = mail_user
msg['To'] = mailto_list
#邮件中文如果显示乱码,可以加上下面两句
msg["Accept-Language"]="zh-CN"
msg["Accept-Charset"]="ISO-8859-1,utf-8"
while(True):
res = requests.get(url, headers=headers)
if res.text.__contains__("status iconicon_sign"):
server = smtplib.SMTP()
server.connect(mail_host) # 连接smtp邮件服务器
server.login(mail_user, mail_pass) # 登录
server.sendmail(mail_user, mailto_list, msg.as_string()) # 发送
server.close() # 关闭
print("能签约了")
elif res.text.__contains__("iconicon_release"):
print("目前还是 iconicon_release")
time.sleep(10)
如果房源状态改变,会自动发送邮件。