pythona请求库newbi

2024-06-06 15:35:58 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我在这些论坛上的第一篇帖子,希望你能理解,我也是一个编程新手。 所以,我想用Python做我的第一个项目,使用requests库来处理一些我非常感兴趣的事情。是osu!地图下载程序,您可以通过命令行下载地图。首先,我正在学习请求库以访问网站(登录)。 这是我目前的代码:

import requests
import time

inUserName = input("Nickname: ")
inUserPass = input("Password: ")
req = requests.get("http://osu.ppy.sh/p/api")

from requests.auth import HTTPBasicAuth
requests.get("https://osu.ppy.sh/forum/ucp.php?mode=login", auth=HTTPBasicAuth(inUserName, inUserPass))

with requests.Session() as session:
       POSTrequest = session.post(url=req, data={'username': inUserName, 'password': inUserPass})

time.sleep(2)

我得到的回复是200,太好了。。但几个月前,当我使用了一个类似的代码,我得到了一些HTML,这是没有帮助的,我知道我没有得到任何方式连接。你知道吗

错误是:

requests.exceptions.MissingSchema: Invalid URL '<Response [200]>': No schema supplied. Perhaps you meant http://<Response [200]>?

任何帮助改进代码将不胜感激,非常感谢,并为我所犯的任何英语错误,而不是第一语言抱歉。你知道吗


Tags: 代码importauthhttpinputgettimesh
1条回答
网友
1楼 · 发布于 2024-06-06 15:35:58

因此,您为一篇文章指定了url。你知道吗

import requests
import time

inUserName = input("Nickname: ")
inUserPass = input("Password: ")
osuApiUrl = "http://osu.ppy.sh/p/api"
session = requests.Session()
req = session.get(osuApiUrl)


session.get("https://osu.ppy.sh/forum/ucp.php?mode=login", auth=(inUserName, inUserPass))

POSTrequest = session.post(url=osuApiUrl, data={'username': inUserName, 'password': inUserPass})

if POSTrequests.status_code == 200:
    print(POSTrequests.text)
    print(r.status_code)
time.sleep(2)

此外,如果服务器设置了任何cookie,则应该对整个脚本使用会话。通过使用函数API,您为每个请求创建和丢弃一个会话。这样效率更高。你知道吗

相关问题 更多 >