我正在尝试使用Python登录带有请求库的网站。我尝试了不同的代码而没有运气。这是我的代码:
url = 'https://www.damejidlo.cz/en/profile/prihlaseni'
login_data = {'email': 'test',
'password': 'password',
'do': 'loginForm-submit'}
session = requests.session()
session.headers.update({'do': 'loginForm-submit'})
result = session.post(url, data=login_data)
if "test@lolco.net" in result.content:
print("example.com:", "logged in")
elif "Sign up" in result.content:
print("example.com:", "not logged in")
如何让它发挥作用?您可以使用用户数据来测试登录。之后我会删除该帐户。谢谢!
如果我运行此代码,我会得到example.com: not logged in
。我想登录:D
答案 0 :(得分:0)
这很简单,你只需要添加一个用户代理:
In [7]: import requests
In [8]: from bs4 import BeautifulSoup
In [9]: login = "https://www.damejidlo.cz/en/profile/prihlaseni"
In [10]: data = {"email": "xxxxxxxxx@gmail.com",
....: "password": "xxxxxxxx",
....: "do": "loginForm-submit"}
In [11]: h = {
....: "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36"}
In [12]: with requests.Session() as s:
....: r = s.post(login, data=data, headers=h)
....: soup = BeautifulSoup(r.content,"lxml")
....: print(soup.select_one("#snippet--user-bar a.username.user-bar__links-item").text)
....:
xxxxxxxxx@gmail.com