浏览某球
cookie的思路是cookie尽量完整,找到随时会变的cookie,就会在后台不容易筛选出来。
hook大法如下:
var cookie_cache = document.cookie?document.cookie:"";
Object.defineProperty(document,'cookie',{
get:function get(){
console.log('获取了cookie ===>' + cookie_cache)
return cookie_cache
},
set:function set(val){
var new_val = val.split(';')[0]
console.log('写入了cookie ===>' + new_val)
debugger;
var cookie = cookie_cache + ';' + new_val
return cookie
}
})
代码如下:
import re
import execjs
import requests
import json
index_url = "https://xueqiu.com/"
news_test_url = "https://xueqiu.com/statuses/hot/listV2.json?since_id=-1&max_id=-1&size=15"
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36',
'elastic-apm-traceparent':'00-7a11a187f65a9d3d22f5524842de317e-e2ffdd270821d697-00',
'Referer': 'https://xueqiu.com/today',
}
def get_complete_cookie():
complete_cookie = {}
# 第一次不带参数访问首页,获取 acw_tc 和 acw_sc__v2
response = requests.get(url=index_url, headers=headers,verify=False)
complete_cookie.update(response.cookies.get_dict())
return complete_cookie
# arg1 = re.findall("xq_a_token:'(.*?)'", textCookie)[0]
# print(arg1)
def news_test(cookies):
response = requests.get(url=news_test_url, headers=headers, cookies=cookies,verify=False)
print(response.text)
if __name__ == '__main__':
cookiess=get_complete_cookie()
news_test(cookiess)