我正在尝试从gitlab网址获取html内容。
但是我对Gitlab登录页面感到震惊,即使提供了用户名和密码,我也获得了登录页面的html内容。
代码:
from bs4 import BeautifulSoup
import requests
username = "username"
password = "password"
url = "HTTP://gitlab.com/saikumar/webhooktslint"
result=requests.get(url, auth=("username", "password")).content /*
gets
content from the site */
soup = BeautifulSoup(result,'lxml')
for link in soup:
print link
输出:
Getting HTML content of sign_in page.
预期输出:
Need to get the HTML content of the URL specified.
答案 0 :(得分:0)
在您的gitlab.com/saikumar
页面上没有看到仓库webhooktslint
,因此它很可能是私有存储库。
请查看python GitLab CLI usage,确保正确设置~/.python-gitlab.cfg
用户配置文件,并在其中放置GitLab private token:这样您就不必处理凭据了。
gitlab python命令将为您进行卷曲,包括get the raw data of a file的卷曲。
但是,当您尝试在代码中进行GET私有回购时,相同的私有令牌可以帮助您进行身份验证(如果您追求的是实际HTML页面内容)。
要点是要访问私人存储库,请使用PAT(个人访问令牌)而不是您的实际帐户密码。