小编Rob*_*Rob的帖子

Python请求无法登录

我很欣赏你在这里做的事情.通常我可以在Stackoverflow的帮助下弄清楚我的问题,但这次我被卡住了.希望你能帮助我!

问题很简单:如何使用Python的请求登录这个网页

我的步骤:

  1. 获取登录网址
  2. 提供登录详细信息.根据HTML,我需要提供"电子邮件"和"密码".
  3. 创建会话并使用帖子登录
  4. 如果登录成功,请检查HTML

不幸的是,在这种情况下,简单的方法似乎不起作用.例如,输出details是:

<script>
    dataLayer = [{
        'environment': 'production',
        'loggedIn': '0',
        'userCode': '',
        'rank': '',
        'totalBalance': '0',
        'overAgeCasino': '0'
    }];
</script>
Run Code Online (Sandbox Code Playgroud)

显然,如果登录成功'0','loggedIn'应该改为'1'.

在一个例子中,我发现你可能需要添加一个'csrftoken',并且这可以在HTML中找到'隐藏'类型.但是,type ='hidden'部分中的名称似乎与此无关,也没有任何价值(链接到HTML的屏幕截图).在其他地方我读到CSFR令牌也存储在CookieJar中,但它不存在:

<RequestsCookieJar[<Cookie PHPSESSID=5dib6cf6kpvf29dsn725ljcec7 for .napoleongames.be/>, <Cookie locale=en_GB for .napoleongames.be/>, <Cookie user=false for .napoleongames.be/>]>
Run Code Online (Sandbox Code Playgroud)

我发现很难相信登录是不可能的,但我已经没有想法了.如果有人知道如何使用urllib(2),它也很有用.我宁愿不使用Selenium,因为我无法顺利运行它.

码:

 import requests
    from bs4 import BeautifulSoup
    from datetime import date

date_str = str(date.today())
login_url = 'https://en-gb.sports.napoleongames.be/user/login'
protected_url = 'proctected_url'

payload = {'email': 'address@example.com', …
Run Code Online (Sandbox Code Playgroud)

html python urllib beautifulsoup python-requests

5
推荐指数
1
解决办法
94
查看次数

标签 统计

beautifulsoup ×1

html ×1

python ×1

python-requests ×1

urllib ×1