单击带有不可见验证码但分离令牌时出现问题的按钮



我正在制作一个脚本来单击一个具有不可见 ReCaptcha 的按钮,我已经到了收到令牌的地步,但它也加入了一堆我不需要的额外值。我尝试加载为 JSON 但出现错误。

尝试加载为 JSON,但无法打印

import json
with requests.session() as s:
cap_url = "https://www.google.com/recaptcha/api2/reload?k=6LescGEUAAAAAHB01GI2NUqZht8FYV4UWDTMfgtK"
v= "v1565591531251"
reason= "q"
c= "03AOLTBLQhK...."
hl= "en"
size= "invisible"
sa= "vote"
chr= "[82,3,11]"
vh= "1391321749"
bg= "sklfglskfg;lkjdfsg...."
s.get(cap_url)
cap_data = dict(v=v, reason=reason, c=c, k=k, co=co, hl=hl, size=size, sa=sa, chr=chr, vh=vh, bg=bg)
response_cap = s.post(cap_url, data=cap_data, headers={"Referer":"Referer: https://www.google.com/recaptcha/api2/anchor?ar=1&k=6LescGEUAAAAAHB01GI2NUqZht8FYV4UWDTMfgtK&co=aHR0cHM6Ly8xLnNob3J0c3RhY2suY29tOjQ0Mw..&hl=en&v=v1565591531251&size=invisible&cb=mac9os912hh0", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36"})
print(response_cap.text)

它打印

["rresp","03AOLTBLTxihRmz5TITehHp-5ElsA_q_IpfAmHV4UagO-2rNfoHWp5CJZ2rSm2fiMZziCQRJRB54uVtSg3ZvM3m-7yrzpSeE977wmJEdtDfznduOj81oRic4tQQDJu86wsd20LUP5SkBUeyRo3EpZLepEfExLW3KnAsQGihp7JVJOoqWTWivRxXAYFkJ5FqbByyU8usrfP23MUY3iA32aCMVoWskKAaL3fJVZ91Sst0mGgBY5K9h6VBGPDNOOpvHtu-4EF1zSvh0OlCS0641ZElJPWi2_d7bf-5nMGl-oT8gQgJtnPcpBh62VARN52jXkJDHwikB4CVuA1g2vuZ0htMcEegmDQOrP0aQO0AjZeAIKU3m3g3CsTvO43uIAEKKvBWzgxvP7qgEY-",null,120,null,null,null,["bgdata","Ly93d3cuZ29vZ2xlLmNvbS9qcy9iZy9wV21nVGJ6clY3..."]      
,"05AHVohkZt...."]

(...代替了很多额外的文本(

在这种情况下,我只需要开始时的令牌

03AOLTBLTxihRmz5TITehHp-5ElsA_q_IpfAmHV4UagO-2rNfoHWp5CJZ2rSm2fiMZziCQRJRB54uVtSg3ZvM3m-7yrzpSeE977wmJEdtDfznduOj81oRic4tQQDJu86wsd20LUP5SkBUeyRo3EpZLepEfExLW3KnAsQGihp7JVJOoqWTWivRxXAYFkJ5FqbByyU8usrfP23MUY3iA32aCMVoWskKAaL3fJVZ91Sst0mGgBY5K9h6VBGPDNOOpvHtu-4EF1zSvh0OlCS0641ZElJPWi2_d7bf-5nMGl-oT8gQgJtnPcpBh62VARN52jXkJDHwikB4CVuA1g2vuZ0htMcEegmDQOrP0aQO0AjZeAIKU3m3g3CsTvO43uIAEKKvBWzgxvP7qgEY-

编辑:刚刚尝试

res = json.loads(response_cap.text)打印(RES[1](

打印:

File "vote.py", line 24, in <module>
res = json.loads(response_cap.text)
File "C:UsersbAppDataLocalProgramsPythonPython37libjson__init__.py", line 348, in loads
return _default_decoder.decode(s)
File "C:UsersbAppDataLocalProgramsPythonPython37libjsondecoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:UsersbAppDataLocalProgramsPythonPython37libjsondecoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)```

响应以字节为单位,所以试试这个:

captcha_response = response_cap.content
captcha_response = captcha_response.decode('latin-1')
captcha_response = captcha_response[15:477] #adjust numbers to display only the captcha

现在你能告诉我你是如何点击隐形验证码的,你是如何得到应该发送的尸体的吗?因为我也尝试采取有效的 g-recaptcha 响应。

最新更新