溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python實現淘寶秒殺聚劃算搶購自動提醒源碼

發布時間:2020-09-06 22:06:31 來源:腳本之家 閱讀:287 作者:Techzero 欄目:開發技術

說明

本實例能夠監控聚劃算的搶購按鈕,在聚劃算整點聚的時間到達時發出提醒(音頻文件自己定義位置)并自動彈開頁面(URL自己定義)。

同時還可以通過命令行參數自定義刷新間隔時間(默認0.1s)和監控持續時間(默認1800s)。

源碼

# encoding: utf-8 
''''' 
@author: Techzero 
@email: techzero@163.com 
@time: 2014-5-18 下午5:06:29 
''' 
import cStringIO 
import getopt 
import time 
import urllib2 
import subprocess 
import sys 
 
from datetime import datetime 
 
MEDIA_PLAYER = 'C:/Program Files/Windows Media Player/wmplayer.exe' 
MEDIA_FILE = 'D:/notify.mp3' 
CHROME = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe' 
URL = 'http://detail.ju.taobao.com/home.htm?spm=608.2214381.2.1.SY0wVT&item_id=16761325430&id=10000002801432' 
NO_X11 = False 
 
def get_current_button(): 
  '''''獲取當前按鈕狀態''' 
  content = urllib2.urlopen(URL).read() #獲取頁面內容 
   
  buf = cStringIO.StringIO(content.decode('gbk').encode('utf8')) #將頁面內容轉換為輸入流 
  current_button = None 
  for line in buf: 
    line = line.strip(' \n\r') #去掉回車換行 
     
    if line.find(r'<a href="#" rel="external nofollow" class="extra notice J_BuyButtonSub">開團提醒</a>') != -1: 
      current_button = '開團提醒' 
      break 
    elif line.find(r'<div class="main-box chance ">') != -1: 
      current_button = '還有機會' 
      break 
    elif line.find(r'<span class="out floatright">賣光了...</span>') != -1: 
      current_button = '賣光了' 
      break 
    elif line.find(r'<span class="out floatright">已結束...</span>') != -1: 
      current_button = '已結束' 
      break 
    elif line.find(r'<input type="submit" class="buyaction J_BuySubmit" title="馬上搶" value="馬上搶"/>') != -1: 
      current_button = '馬上搶' 
      break 
     
  buf.close() 
  return current_button 
 
 
def notify(): 
  '''''發出通知并用Chrome打開秒殺頁面''' 
  subprocess.Popen([MEDIA_PLAYER, MEDIA_FILE]) 
  if not NO_X11: 
    subprocess.Popen([CHROME, URL]) 
    print '打開頁面' 
 
 
def monitor_button(interval, last): 
  '''''開始監視按鈕''' 
  elapse = 0 
  while elapse < last: 
    current_button = get_current_button() 
 
    now = datetime.now() 
    print '%d-%d-%d %d:%d:%d - 現在按鈕是 %s' % (now.year, now.month, now.day, now.hour, now.minute, now.second, current_button) 
 
    if current_button == '馬上搶' or current_button == '還有機會': 
      print '趕緊搶購!' 
      notify() 
      break 
    elif current_button == '賣光了' or current_button == '已結束': 
      print '下次再試吧!' 
      break 
    else: 
      print '還沒開始呢,再等等吧!' 
 
    time.sleep(interval) 
    elapse += interval 
 
 
def usage(): 
  print ''''' 
usage: monitor_mac_price.py [options] 
 
Options: 
  -i interval: 30 seconds by default. 
  -l last: 1800 seconds by default. 
  -h: Print this usage. 
  -X: Run under no X11. 
''' 
 
if __name__ == '__main__': 
  try: 
    opts, args = getopt.getopt(sys.argv[1:], 'i:l:hX') 
  except getopt.GetoptError, err: 
    print str(err) 
    sys.exit(1) 
 
  interval = 0.1 
  last = 1800 
 
  for opt, val in opts: 
    if opt == '-i': 
      interval = int(val) 
    elif opt == '-l': 
      last = int(val) 
    elif opt == '-X': 
      NO_X11 = True 
    elif opt == '-h': 
      usage() 
      sys.exit() 
 
  monitor_button(interval, last) 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女