设置服务器cookie



我正试图为网站设置cookie,但如果我打印食谱,我只会得到网站设置的会话ID cookie,而不是我试图设置的cookie。

我试着遵循文档,但不明白为什么它不起作用。

谨致问候,标记

import requests
from bs4 import BeautifulSoup
s = requests.session()
cookie = {"testcookie":"testvalue"}
header = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36)"}
s.get("http://www.example.com", cookies=cookie, headers=header)
# Get xsrf code
loginpage = s.get("https://example.com/login/", headers=header)
soup = BeautifulSoup(loginpage.text)
xsrflist = []
source=soup.findAll('input',{"value":True})
for sources in source:
    print (sources['value'])
    xsrflist.append(sources["value"])
xsrf = xsrflist[0]
# Login
payload = {"username" : "usernamel", "password" : "password1", 'anti_xsrf_token' : xsrf}
login = s.post("https://example.com/login/", data=payload, cookies=cookie, headers=header)
print(s.headers)
print (requests.utils.dict_from_cookiejar(s.cookies))

您不能设置服务器cookie。当您向服务器发送cookie时,服务器可以对它们执行任何操作,包括忽略。

安装硒

pip install selenium

这是解决方案。

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('yoururl')
htmlpage = driver.page_source
#do something with htmlpage

最新更新