Python requests_html 使用 JQuery 单击按钮提交表单

Python requests_html submit a form by clicking a button using JQuery

我正在探索 Kenneth Reitz's requests_html 并尝试使用 Jquery 提交 JS 渲染网页的形式。我不确定该怎么做,但这是我的尝试:

from requests_html import HTMLSession
url = "https://example.com"
session = HTMLSession()
r = session.get(url)
r.html.render()
script = """
       () => {
         $("#some_input_field").val("Some value");
         $("#submit_button").click();
         }
         """
r.html.render(script=script, reload=False)

但是,该值未在输入字段中设置并且未提交表单... 有什么方法可以模拟按钮单击或通过 requests_html 中的 xhr 提交表单?

例如:如果我们使用 selenium,我们可以很容易地模拟按钮点击,只需键入:

element.click()

好的,以下代码适用于我的情况:

from requests_html import HTMLSession
url = "https://example.com"
session = HTMLSession()
r = session.get(url)
r.html.render()
script = """
       () => {
              if ( jQuery.isReady ) {  
                   $("#some_input_field").val("Some value");
                   $("#submit_button").click();
              }
        }
         """
r.html.render(script=script, reload=False)

编辑: 更好的方法应该是:

from requests_html import HTMLSession
url = "https://example.com"
session = HTMLSession()
r = session.get(url)
r.html.render()
script = """
       () => {
              $(document).ready(function() {  
                   $("#some_input_field").val("Some value");
                   $("#submit_button").click();
              })
        }
         """
r.html.render(script=script, reload=False)