在 python 个 Http 请求上呈现 reCaptcha
Rendering reCaptcha on python Http Requests
我不太确定如何使用 HTTP 请求的响应来显示小部件。
问题是,当我在 http link 中请求 GET 时,它 returns 一个 html 响应;
但是当我尝试渲染小部件所在的 html 部分时,pywebview 会抛出类似
的错误
A Server error occurred. Please contact the administrator.
Or it shows the values of the html's tag not the html webview itself
参考代码:
def handle_captcha(sess, request, ua):
http_response = sess.get(request, headers=ua)
http_show_captcha = BeautifulSoup(http_response.text, 'html.parser')
print("hellos")
window = webview.create_window('Captcha', http_show_captcha.find('div' , attrs={"class" : "checkpoint__wrapper content"}).text)
webview.start()
本程序的流程是通过http请求访问网站->手动解验证码->获取验证码响应->目标页面
我的问题是,是否有任何 python 框架可以呈现 HTTP 响应,尤其是 reCaptcha Widget?
或者处理这个问题的最佳方法是什么?
以及如何将会话存储在 webview 的响应中,或者如何访问从 http 请求生成的上一个会话?
如果您偶然发现了这个问题。我已经在一周前解决了这个问题。
我使用的解决方案是 运行 使用 Pywebview 的自定义 JS 脚本:
Question #1 Is there any python framework that renders HTTP response especially the Captcha widget?
答:必须自己做。
Question #2 What's the best way to handle this problem?
答案:获取小部件的位置,然后手动将其加载到 webview。然后使用 JS 获取 payload:
window.evaluate_js("document.querySelector('#g-recaptcha-response').value")
Question #3 How can I store the session to webview response?
答:不能。但也许您可以使用 pywebview 的 API.
注入会话
Question #4 How can I access the previous session that was generated from HTTP Request.
答案:这与问题#3 几乎相同。也许我们可以手动获取会话然后将其存储到 pywebview 的 API.
希望有人帮忙。
我不太确定如何使用 HTTP 请求的响应来显示小部件。
问题是,当我在 http link 中请求 GET 时,它 returns 一个 html 响应; 但是当我尝试渲染小部件所在的 html 部分时,pywebview 会抛出类似
的错误A Server error occurred. Please contact the administrator.
Or it shows the values of the html's tag not the html webview itself
参考代码:
def handle_captcha(sess, request, ua):
http_response = sess.get(request, headers=ua)
http_show_captcha = BeautifulSoup(http_response.text, 'html.parser')
print("hellos")
window = webview.create_window('Captcha', http_show_captcha.find('div' , attrs={"class" : "checkpoint__wrapper content"}).text)
webview.start()
本程序的流程是通过http请求访问网站->手动解验证码->获取验证码响应->目标页面
我的问题是,是否有任何 python 框架可以呈现 HTTP 响应,尤其是 reCaptcha Widget? 或者处理这个问题的最佳方法是什么? 以及如何将会话存储在 webview 的响应中,或者如何访问从 http 请求生成的上一个会话?
如果您偶然发现了这个问题。我已经在一周前解决了这个问题。
我使用的解决方案是 运行 使用 Pywebview 的自定义 JS 脚本:
Question #1 Is there any python framework that renders HTTP response especially the Captcha widget?
答:必须自己做。
Question #2 What's the best way to handle this problem?
答案:获取小部件的位置,然后手动将其加载到 webview。然后使用 JS 获取 payload:
window.evaluate_js("document.querySelector('#g-recaptcha-response').value")
Question #3 How can I store the session to webview response?
答:不能。但也许您可以使用 pywebview 的 API.
注入会话Question #4 How can I access the previous session that was generated from HTTP Request.
答案:这与问题#3 几乎相同。也许我们可以手动获取会话然后将其存储到 pywebview 的 API.
希望有人帮忙。