以前在github上看到的休讳,別人寫的
源碼一直留著喜歡阿,現(xiàn)在會requests了應(yīng)該容易了吧捏卓,可我還沒看
還有 垃圾軟件毀我青春害我單身~
# -*- coding: utf-8 -*-
"""Automatically signing for NetEasy Music"""
import requests
import time
import json
from datetime import datetime as dt
MUSIC_U = "抓包結(jié)果"
hour = 5
__author__ = 'abrasumente'
REQUEST_URL = 'http://music.163.com/api/point/dailyTask?csrf_token=placeholder&type={}'
TYPE_WEB = 1
TYPE_ANDROID = 0
def nesign(music_u, web=True, android=True):
"""簽到
usage:
>>> from nesign import nesign
>>> result = nesign('MY MUSIC_U')
{'android': {'point': 3, 'code': 200}, 'web': {'point': 2, 'code': 200}}
>>> result = nesign('MY MUSIC_U') # 錯誤一般會有一個 msg 字段
{'android': {'code': -2, 'msg': '重復(fù)簽到'}, 'web': {'code': -2, 'msg': '重復(fù)簽到'}}
>>> result = nesign('一個非法的 MUSIC_U') # 當然也有特例
{'android': {'code': 301}, 'web': {'code': 301}}
:type music_u: str
:param music_u: 你的登陸 token蔬浙,可以在 web 端下登錄后在 music.163.com 域下的 cookies 找到
:param web: web 端兩經(jīng)驗簽到
:param android: android 端三點經(jīng)驗簽到
:rtype: dict
"""
cookies = {'MUSIC_U': music_u}
headers = {'Referer': 'http://music.163.com/'}
result = {}
if not (web or android):
raise ValueError('至少指定一種簽到類型')
if web:
url = REQUEST_URL.format(TYPE_WEB)
response = requests.post(url, cookies=cookies,
headers=headers)
result['web'] = response.json()
if android:
url = REQUEST_URL.format(TYPE_ANDROID)
response = requests.post(url, cookies=cookies,
headers=headers)
result['android'] = response.json()
return result
if __name__ == '__main__':
while 1:
result = nesign(MUSIC_U)
print json.dumps(result, ensure_ascii=False, indent=4)
print dt.now(), '='*20,
print '\nsleeping %s hours...' % hour
time.sleep(60*60*hour)