• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    Python(Tornado)模擬登錄小米搶手機

    來源:懂視網 責編:小采 時間:2020-11-27 14:39:01
    文檔

    Python(Tornado)模擬登錄小米搶手機

    Python(Tornado)模擬登錄小米搶手機:今天看到同事參與小米的搶購,幾經數個星期的嘗試,終于搶到了一臺小米電視……看了一下小米的搶購流程,似乎可以用程序可破。于是想寫點東西玩玩(你懂的……),第一步肯定是先得模擬登錄小米帳號,當練手吧。用 Python 來實現吧,由于是寫一個Web應用,那
    推薦度:
    導讀Python(Tornado)模擬登錄小米搶手機:今天看到同事參與小米的搶購,幾經數個星期的嘗試,終于搶到了一臺小米電視……看了一下小米的搶購流程,似乎可以用程序可破。于是想寫點東西玩玩(你懂的……),第一步肯定是先得模擬登錄小米帳號,當練手吧。用 Python 來實現吧,由于是寫一個Web應用,那

    今天看到同事參與小米的搶購,幾經數個星期的嘗試,終于搶到了一臺小米電視……看了一下小米的搶購流程,似乎可以用程序可破。于是想寫點東西玩玩(你懂的……),第一步肯定是先得模擬登錄小米帳號,當練手吧。
    用 Python 來實現吧,由于是寫一個Web應用,那么框架就選 Tornado。
    首先是定義應用的 URL:

    代碼如下:


    def main():
    tornado.options.parse_command_line()
    application = tornado.web.Application([
    (r"/", MainHandler),
    (r"/mibuy/", MiBuyHandler),
    ],**settings)
    http_server = tornado.httpserver.HTTPServer(application)
    http_server.listen(options.port)
    tornado.ioloop.IOLoop.instance().start()


    接下來就是尋找需要 post 過去的數據,用 Fiddler 來嗅探一下:

    也就是說,POST 的地址是 https://account.xiaomi.com/pass/serviceLoginAuth2

    需要構造的表單參數也很簡單(已進行 URL 編碼):passToken=&user=www.nowamagic.net&pwd=password&callback=https%3A%2F%2Faccount.xiaomi.com&sid=passport&qs=%253Fsid%253Dpassport&hidden=&_sign=KKkRvCpZoDC%2BgLdeyOsdMhwV0Xg%3D。即:

    代碼如下:


    post_data = urllib.urlencode({'passToken':'', 'user': 'www.nowamagic.net', 'pwd': 'password', 'callback':'https://account.xiaomi.com', 'sid':'passport', 'qs':'%3Fsid%3Dpassport', 'hidden':'', '_sign':'KKkRvCpZoDC+gLdeyOsdMhwV0Xg='})
    path = 'https://account.xiaomi.com/pass/serviceLoginAuth2'


    接下來函數也可以寫出來了:

    代碼如下:


    class MiBuyHandler(tornado.web.RequestHandler):
    def get(self):
    cj = cookielib.CookieJar()
    post_data = urllib.urlencode({'passToken':'', 'user': 'www.nowamagic.net', 'pwd': 'password', 'callback':'https://account.xiaomi.com', 'sid':'passport', 'qs':'%3Fsid%3Dpassport', 'hidden':'', '_sign':'KKkRvCpZoDC+gLdeyOsdMhwV0Xg='})
    path = 'https://account.xiaomi.com/pass/serviceLoginAuth2'
    cookieHandle = urllib2.HTTPCookieProcessor(cj)
    opener = urllib2.build_opener(cookieHandle)
    #opener.addheaders = [('User-agent', 'Opera/9.23')]
    urllib2.install_opener(opener)
    req = urllib2.Request(path, post_data)
    response = urllib2.urlopen(req)
    html = response.read()
    self.render("mibuy.html",message=html)


    如何需要把 cookie 打印出來,直接 print cj 就可以看到 cookie 的內容。
    接下來的事情貌似也很簡單,就是解析 hdcontrol (URL:http://tc.hd.xiaomi.com/hdget?callback=hdcontrol) 這個 json。

    代碼如下:


    hdcontrol(
    {
    stime: 1383645496,
    status: {
    allow: true,
    miphone: {
    hdurl: "",
    duration: null,
    hdstop: true,
    reg: true,
    pmstart: false,
    hdstart: false
    },
    mibox: {
    hdurl: "",
    duration: null,
    hdstop: true,
    reg: true,
    pmstart: false,
    hdstart: false
    },
    mitv: {
    hdurl: "",
    duration: null,
    hdstop: true,
    reg: false,
    pmstart: false,
    hdstart: false
    }
    }
    })


    當 allow 為 true 的時候,hdurl 會有值,比如 ?_a=20131105_phone_a212a2b30e5&_op=choose&_s=72b686828&_m=1 之類的,這個就是真實的搶購地址,直接訪問這個地址應該就不用再點排隊的按鈕。僅當拋磚引玉,懂程序的各位都該知道怎么辦了吧……
    僅僅適用于目前(2013年11月),后續小米那邊可能會改變一些規則。

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    Python(Tornado)模擬登錄小米搶手機

    Python(Tornado)模擬登錄小米搶手機:今天看到同事參與小米的搶購,幾經數個星期的嘗試,終于搶到了一臺小米電視……看了一下小米的搶購流程,似乎可以用程序可破。于是想寫點東西玩玩(你懂的……),第一步肯定是先得模擬登錄小米帳號,當練手吧。用 Python 來實現吧,由于是寫一個Web應用,那
    推薦度:
    標簽: 登錄 小米 搶購
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久久久成人精品无码中文字幕| 国产精品91av| 国产精品嫩草影院AV| 精品偷自拍另类在线观看丰满白嫩大屁股ass | 四虎精品8848ys一区二区| 欧洲精品久久久av无码电影| 欧美日韩在线精品一区二区三区激情综合| 亚洲精品福利视频| 福利姬在线精品观看| 精品久久久久久无码专区| 亚洲国产精品VA在线看黑人| 免费看一级毛片在线观看精品视频| 国产精品99在线播放| 亚洲国产精品自在在线观看| 国内精品伊人久久久久| 99re国产精品视频首页| 国产精品自在线拍国产| 久久久久99精品成人片直播 | 国产精品久久精品| 精品国产三级a在线观看| 无码国内精品人妻少妇| 一本一本久久A久久综合精品 | 99精品视频在线观看re| 久久亚洲欧美国产精品| 亚洲Av永久无码精品三区在线| 青青草97国产精品免费观看| 久久99亚洲综合精品首页| 国内精品国语自产拍在线观看| 国产精品一区二区av不卡| 国产精品熟女福利久久AV| 国产精品高清2021在线| 国内精品国语自产拍在线观看| 国产精品午夜久久| 精品人妻少妇嫩草AV无码专区| 精品国产一区二区三区久久蜜臀| 国产精品麻豆VA在线播放| 国产精品欧美亚洲韩国日本久久 | 日韩精品欧美国产在线| 人妻少妇精品无码专区动漫| 自拍偷在线精品自拍偷无码专区 | 亚洲精品自在在线观看|