首先,感谢您抽出宝贵的时间阅读本文并可能试图帮助我。
我正在尝试制作一个脚本来轻松登录站点。我也想获得登录 cookie,所以也许我以后可以重用它们。我制作了脚本,它让我正确登录。但是我拿不到 cookies 。当我尝试打印它们时,我看到的是:
<RequestsCookieJar[]>
显然这对我没有帮助,我想。所以现在我想知道如何获取真正的 cookie 数据。非常感谢任何能帮助我实现这一目标的人。
我的代码:
import requests
import cfscrape
from bs4 import BeautifulSoup as bs
header = {"User-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"}
s = requests.session()
scraper=cfscrape.create_scraper(sess=s) #i use cfscrape because the page uses cloudflare anti ddos page
scraper.get("https://www.bstn.com/einloggen", headers=header)
myacc={"login[email]": "my@mail.com", #obviously change
"login[password]": "password123"}
entry=scraper.post("https://www.bstn.com/einloggen", headers=header, data=myacc)
soup=bs(entry.text, 'lxml')
accnm=soup.find('meta',{'property':'og:title'})['content']
print("Logged in as: " + accnm)
aaaa=scraper.get("https://www.bstn.com/kundenkonto", headers=header)
print(aaaa.cookies)
如果我打印 ccokies,我只会得到 <RequestsCookiesJar[]>
就像之前描述的那样......如果有人能帮助我获得“真正的” cookies ,那就太好了
最佳答案
如果你想得到你的登录cookie,你应该使用发布后的响应,因为你正在做登录操作!如果您输入正确的电子邮件和密码,服务器将发回 session cookie。为什么您在 aaaa
中得到空 cookie 是因为网站不想设置或更改您的 cookie。
entry = scraper.post("https://www.bstn.com/einloggen", allow_redirects=False, headers=header, data=myacc)
print(entry.cookies)
关于python - 登录页面并获取cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797784/