在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Python  HTML/ python selenium chrome如何設(shè)置請(qǐng)求體

python selenium chrome如何設(shè)置請(qǐng)求體

各位好,請(qǐng)問(wèn)如何設(shè)置chrome的請(qǐng)求體呢?

問(wèn)題來(lái)源為,破解極驗(yàn)驗(yàn)證碼時(shí)的場(chǎng)景,第一次手動(dòng)輸入驗(yàn)證碼,輸入后網(wǎng)站會(huì)返回我一個(gè)ACCESS_TOKEN,這個(gè)token會(huì)在1個(gè)小時(shí)內(nèi)失效,也就是我在一個(gè)小時(shí)內(nèi)刷新頁(yè)面,或者臨近一個(gè)小時(shí)的時(shí)候刷新頁(yè)面,會(huì)返回我一個(gè)新的token,也就是說(shuō)我就登錄一次,后面只需要刷新頁(yè)面即可。

但是目前遇到一個(gè)問(wèn)題,chrome會(huì)莫名其妙關(guān)閉,因此我需要在判斷瀏覽器被關(guān)閉時(shí)重新啟動(dòng)瀏覽器,然后post如下的數(shù)據(jù)。

數(shù)據(jù)如下所示:

POST https://www.test.com/rest.php HTTP/1.1
Host: api.test.com
Connection: keep-alive
Content-Length: 216
Origin: https://api.test.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36
Content-type: application/x-www-form-urlencoded
Accept: */*
Referer: https://api.test.com/nspcross.html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: CASLOGIN=true; CASLOGINSITE=1; LOGINACCSITE=1

nsp_svc=AppPromote.Developer.getRole&access_token=CFpS9d%2FDFoxQvOiM%2B%2F3j1iFce0dYDYQR0qq7TfAVUG5e%2FGhgBx2jHL6p8M02y09V%2FEHQpwemI7V1ACD32ERFD45678FGTHDBW3EI6iX4%3D&nsp_fmt=JSON&nsp_ts=18547841246

在Python 的selenium chrome中如何設(shè)置,才能請(qǐng)求成功呢?

回答
編輯回答
呆萌傻

已解決

import os
import re
import psutil
import seleniumrequests
#判斷瀏覽器狀態(tài)
def handle_brower_statue():
    while True:
        brower_list = []
        pids = psutil.pids()
        pid_name_search = re.compile(r'chrome')
        for pid in pids:
            p = psutil.Process(pid)
            pid_name_chrome = re.search(pid_name_search, p.name())
            if pid_name_chrome == None:
                pass
            else:
                brower_list.append(pid)
        print len(brower_list)
        if len(brower_list) < 8:
            for kill_pid in brower_list:
                os.system("kill -9 %s" % kill_pid)
            access_token = read_access_token()
            new_data = {
                "nsp_svc":"AppPromote.Developer.getRole",
                "access_token":access_token,
                "nsp_fmt":"JSON",
                "nsp_ts":setting.nsp_ts,
            }
            new_driver = seleniumrequests.Chrome()
            time.sleep(2)
            response = new_driver.request('POST','https://api.xxxx.com/rest.php',data=new_data)
            print response.text
            
2018年8月17日 10:33