如何使用python从chrome控制台找到js元素

z3yyvxxp  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(237)

我有一个代码来解决recaptcha使用python selenium ,一切正常。
我只想改进它>每当运行这段代码时,我想确保js元素 ___grecaptcha_cfg.clients[0].I.I 是正确的。此元素可以不时旋转为不同的值,例如: ___grecaptcha_cfg.clients[0].J.J ___grecaptcha_cfg.clients[0].Gq.X. ___grecaptcha_cfg.clients[0].aa.l. 您可以看到最后两项可以更改。
我只知道如何在chrome上手动检查,看图片,
在此处输入图像描述
但是用 selenium 检查一下怎么样?这样我就可以自动应用到我的代码中。
这是我的代码,有很多代码,但是你可以看到我在selenium中应用这个js元素的最后一行:

  1. # request post send to 2captcha------------------
  2. my_request_post = rf"https://2captcha.com/in.php" \
  3. rf"?key={my_api}" \
  4. rf"&method={method}" \
  5. rf"&invisible=1" \
  6. rf"&googlekey={data_sitekey}" \
  7. rf"&pageurl={my_url}"
  8. # request ticket from recaptcha v2-----------------------
  9. startime = time.time()
  10. print('start request to 2captcha')
  11. resp = requests.get(my_request_post)
  12. if resp.text[0:2] != 'OK':
  13. quit('Service error. Error code:' + resp.text)
  14. print(f'return captcha_id: {resp.text}')
  15. captcha_id = resp.text[3:] # get the ticket
  16. # the request post with ticket ask for solving recaptcha----------------------
  17. request_2captcha = rf'https://2captcha.com/res.php' \
  18. rf'?key={my_api}' \
  19. rf'&action=get' \
  20. rf'&json=0' \
  21. rf'&id={captcha_id}'
  22. # as offical document suggested, wait for 15 secs-----------------
  23. print('wait for 15 sec')
  24. time.sleep(15)
  25. for i in range(1, 50):
  26. time.sleep(5) # wait 5 sec
  27. resp = requests.get(request_2captcha)
  28. print(f'attempt request cycle: {i} | resp.text: {resp.text}')
  29. if resp.text[0:2] == 'OK':
  30. break
  31. # vialidation code that apply back to the site----------------------------
  32. result = resp.text[3:]
  33. driver.execute_script(f'document.getElementById("g-recaptcha-response").innerHTML = "{result}"')
  34. driver.execute_script(f"___grecaptcha_cfg.clients[0].I.I.callback = '{result}'")

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题