使用Python中的requests模块登录到Barclays premier league fantasy football?

2024-09-26 17:53:49 发布

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

我正在尝试编写一个Python脚本,让我登录到我的fantasy足球帐户https://fantasy.premierleague.com/,但是我的登录有点不对劲。当我通过浏览器登录并使用Chrome开发工具检查详细信息时,我发现请求URL是https://users.premierleague.com/accounts/login/,发送的表单数据是:

csrfmiddlewaretoken:[My token]
login:[My username]
password:[My password]
app:plfpl-web
redirect_uri:https://fantasy.premierleague.com/a/login

还有许多请求头:

^{pr2}$

因此,我编写了一个简短的Python脚本,使用请求库尝试登录并导航到一个页面,如下所示:

import requests
with requests.Session() as session:
url_home = 'https://fantasy.premierleague.com/'
html_home = session.get(url_home)
csrftoken = session.cookies['csrftoken']
values = {
    'csrfmiddlewaretoken': csrftoken,
    'login': <My username>,
    'password': <My password>,
    'app': 'plfpl-web',
    'redirect_uri': 'https://fantasy.premierleague.com/a/login'
}
head = {
    'Host':'users.premierleague.com',
    'Referer': 'https://fantasy.premierleague.com/',
}
session.post('https://users.premierleague.com/accounts/login/', 
             data = values, headers = head)
url_transfers = 'https://fantasy.premierleague.com/a/squad/transfers'
html_transfers = session.get(url_transfers)
print(html_transfers.content)

在打印出我的post请求的内容时,我得到一个HTML响应代码500错误:

b'\n<html>\n<head>\n<title>Fastly error: unknown domain users.premierleague.com</title>\n</head>\n<body>\nFastly error: unknown domain: users.premierleague.com. Please check that this domain has been added to a service.</body></html>'  

如果我从我的头dict中删除“host”,我会得到一个HTML响应代码405错误:

b''

我尝试过在我的头dict中包含各种请求头的组合,但似乎没有任何效果。在


Tags: httpscomurlhomesessionmyhtmllogin
1条回答
网友
1楼 · 发布于 2024-09-26 17:53:49

以下是对我有用的。我只是删除了headers = head

session.post('https://users.premierleague.com/accounts/login/', 
             data = values)

我想你是在用程序来挑选你的团队,就像我一样。你的代码让我开始了谢谢。在

相关问题 更多 >

    热门问题