使用没有 Selenium 和 Beautiful Soup 的请求与网站交互?

Interacting with a WebSite using Requests without Selenium and Beautiful Soup?

我创建了一个自动化程序来测试在 Linux 框上使用 Python/Requests/Selenium/BeautifulSoup 的网站。该网站有一个 user/login 组合(登录页面)和一个由表单控制的安全问题(下一页)。

    driver.find_element(By.NAME, "in_user").send_keys(user_name)
    sleep(1)
    driver.find_element(By.NAME, "in_pass").send_keys(user_pwd)
    sleep(1)
    driver.find_element(By.ID, "login").click()
    sleep(1)

记录后,报告必须executed/downloaded调用javascript函数

    driver.execute_script("navigate('des' , 'reports' , this);")
    driver.execute_script("document.frm_report.submit();")
    driver.execute_script("create_csv();")

所有这一切都工作正常,但我想知道是否可以创建一个仅使用 Requests(或至少不使用 Selenium)的版本以在没有浏览器的服务器中 运行 它。我想避免让我的笔记本电脑白天和黑夜都开着!!!

我对 Requests 不是很有经验,不知道如何实现:

任何人都可以给我一些关于在哪里查找信息或文档的想法,如果可能的话?

谢谢

如果您想测试网站是否正确呈现并且您可以单击所有按钮并执行 javascript 功能,您必须使用某种网络 browser/engine.

如果您只想测试底层 API 端点而不是用户界面,您可以使用 chrome 开发工具或 fiddler 之类的东西来记录正在发送的 HTTP 请求并尝试在 Python。因此,首先您进行身份验证以获取令牌,然后可以授权您创建报告的请求。