【问题标题】:Python Requests status_code 401 UNAUTHORIZEDPython 请求 status_code 401 未经授权
【发布时间】:2016-10-24 07:47:26
【问题描述】:

我正在尝试从安全网络中进行网络抓取。安全性已经很严格了,我有一个用户名和密码——但是如果你打开我正在尝试使用我的程序的站点,你将不会被提示登录(因为你在网络中)。我在这里的身份验证遇到问题...

import requests

url = "http://theinternalsiteimtryingtoaccess.com"
r = requests.get(url, auth=('myusername', 'mypass'))
print(r.status_code)

>>>401

我尝试过 HTTPBasicAuth,但也没有用。有什么方法可以解决这个问题吗? 请注意,“urlopen”命令将根据命令打开此站点,无需任何身份验证...请帮助!谢谢!

编辑:找到这个问题后 - (How to scrape URL data from intranet site using python?),我尝试了以下方法:

import requests
from requests_ntlm import HttpNtlmAuth
r = requests.get("http://theinternalsiteimtryingtoaccess.aspx",auth=HttpNtlmAuth('NEED DOMAIN HERE\\usr','pass'))
print(r.status_code)

>>>401 #still >:/

已解决:如果您遇到此问题,并且您尝试访问内部站点,请确保在代码中指定您的特定域。我试图登录,但计算机不知道在哪里登录。您可以通过转到控制面板>>>系统找到您所在的域,并且应该在那里列出域。谢谢!

【问题讨论】:

标签: python authentication python-requests


【解决方案1】:

我们不太可能为您的问题提供确切的解决方案,但我猜 Intranet 使用了某种公司代理。我认为您的请求需要被定向到代理,而不是好像它正在访问外部公共站点。

有关这方面的更多信息,请查看官方文档。

http://docs.python-requests.org/en/master/user/advanced/#proxies

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-17
    • 1970-01-01
    • 1970-01-01
    • 2021-04-26
    • 2017-11-13
    • 2011-11-16
    • 1970-01-01
    相关资源
    最近更新 更多