ingress
ingress copied to clipboard
INGRESS_INTEL_PAYLOAD_V 其实是被写在ingress的js脚本里头的……
def fetch_payload_v(self):
headers = {
'referer': 'https://www.ingress.com/intel',
'user-agent': 'balabalabala',
}
request = requests.post('https://www.ingress.com/jsc/gen_dashboard.js', headers=headers, verify=False)
offset = request.text.index('b.v="') + 5
v = request.text[offset:offset + 40]
return v
就像这样……
最开始运行的时候调用一次,等js版本更新之后v值改变的时候会返回{'error':'out of date'},这个时候重新调用一次就好了。
看起来还是正则匹配‘[\da-f]{40}’比较安全……
Can you send a Pull Request for this? (Please follow PEP8). Thanks. I'm AFK these days
url = 'http://www.ingress.com/jsc/gen_dashboard.js'
http = urllib3.PoolManager()
response = http.request('GET', 'http://www.ingress.com/jsc/gen_dashboard.js')
body = response.data
a = re.search(r'c.v="(.*)";e=ud.g', body)
version = a.group(1)