python - PYTHON 3 - 如何抓取受密码保护的网站?
问题描述
我正在尝试访问我工作中的网站,但它受用户名/密码保护。用户/密码弹出窗口也如图所示。登录图片 我附上我的代码以查看网站。我可以看到 HTML 代码,但是出现错误“需要 401 授权”。你能帮忙吗?
import requests
from bs4 import BeautifulSoup as bs
r = requests.get("http://10.75.19.101/mfgindex", auth=('root', 'password'))
# Convert to beautiful soup object
soup = bs(r.content, features="html.parser")
# print
print(soup.prettify())
解决方案
通常,如果站点受密码保护,您显然无法绕过登录过程。这迫使您利用 RPA 流程,您的代码控制 Web 浏览器并利用真实登录和密码执行登录操作,然后自动浏览您需要的页面并使用 BeautifulSoup 从 HTML 中提取您需要的元素。
为此,我建议尝试 Selenium ( https://www.selenium.dev/ )
一个简短的教程在这里:
前段时间我试过它来解决类似的任务,效果很好
推荐阅读
- python - 用python获取tar尾随垃圾
- javascript - 使用 JSON 对象在鼠标悬停时从 Thumb 图像更改主图像
- winapi - 如何使用 MinGW 工具集构建 WebView2 应用程序?
- java - 无法在使用 Apache NetBeans 的 JavaFX maven 上使用 JFoenix
- flutter - How to have a Rect move constantly in a linear fashion flutter/flame
- java - 如何在 Netbeans Java 中调用主类
- javascript - 从输入中提取文本内的子字符串并将文本存储在文件夹/目录中
- ruby-on-rails - 这种情况下的 HTTP 状态码(400 或 422)
- python - 使用 Selenium 获取“ul”标签内的文本?
- javascript - 显示所有项目后如何禁用显示更多按钮?分页 API