Mechanicalsoup 数据未输入表单
Mechanicalsoup data not being entered into a form
我正在尝试使用 mechanicalsoup 在表单中输入用户名和密码,一切似乎都正常,但在输入
之后
response = browser.submit_selected()
print(response.text)
又是returns登录页面。
我尝试在代码末尾使用 browser.launch_browser() 进行调试,它只显示登录页面,用户名和密码字段中没有输入任何内容。
我是否完全遗漏了我正在尝试做的事情?
登录页面是:https://www.puregym.com/Login/
我的代码如下:
import mechanicalsoup
browser.open("https://www.puregym.com/Login/")
browser.select_form('form[id="loginForm"]')
browser["email"] = "test@gmail.com"
browser["pin"] = "12345678"
response = browser.submit_selected()
browser.launch_browser()
看起来这个登录页面使用 JavaScript,MechanicalSoup 不支持。看到这个 FAQ.
最大的赠品是 <form id="loginForm" ...>
没有 action
属性,如果存在,它将告诉浏览器在非 [=] 中将表单数据作为 HTTP 请求提交到哪里21=]上下文。
另一种判断该页面需要 JavaScript 的方法是在浏览器中禁用它(例如,在 Chrome 中,您可以使用 Chrome 开发人员工具来执行此操作) 然后尝试登录。在禁用 JavaScript 的情况下浏览站点可能会让您对其他登录方法有一些了解,但可能的答案是您需要使用支持 JavaScript 的工具,例如硒。
我正在尝试使用 mechanicalsoup 在表单中输入用户名和密码,一切似乎都正常,但在输入
之后response = browser.submit_selected()
print(response.text)
又是returns登录页面。
我尝试在代码末尾使用 browser.launch_browser() 进行调试,它只显示登录页面,用户名和密码字段中没有输入任何内容。
我是否完全遗漏了我正在尝试做的事情? 登录页面是:https://www.puregym.com/Login/ 我的代码如下:
import mechanicalsoup
browser.open("https://www.puregym.com/Login/")
browser.select_form('form[id="loginForm"]')
browser["email"] = "test@gmail.com"
browser["pin"] = "12345678"
response = browser.submit_selected()
browser.launch_browser()
看起来这个登录页面使用 JavaScript,MechanicalSoup 不支持。看到这个 FAQ.
最大的赠品是 <form id="loginForm" ...>
没有 action
属性,如果存在,它将告诉浏览器在非 [=] 中将表单数据作为 HTTP 请求提交到哪里21=]上下文。
另一种判断该页面需要 JavaScript 的方法是在浏览器中禁用它(例如,在 Chrome 中,您可以使用 Chrome 开发人员工具来执行此操作) 然后尝试登录。在禁用 JavaScript 的情况下浏览站点可能会让您对其他登录方法有一些了解,但可能的答案是您需要使用支持 JavaScript 的工具,例如硒。