代码如下:
# coding:utf-8
import requests
import urllib3
#禁用安全请求警告,适用py3
urllib3.disable_warnings()
url = "https://passport.cnblogs.com/user/signin"
#头信息通过fiddler抓包
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0"
}
s=requests.session()
r = s.get(url, headers=headers, verify=False)
print("======start======")
print(s.cookies)
print("======end======")
#手动登录一次博客园,抓取cookies信息。
c=requests.cookies.RequestsCookieJar()
#添加cookie信息
c.set(".CNBlogsCookie","2DAE0BF85DA417E1EA06A8D7193D46B9D470A2833540FB57D7EFC5CAC8E195A050AD021EE8DA02C23C82F9D434AB388D6581E640892999A0F68C5957225BF66E9B2F31A5E89BF03E8BE8AB8E95B9465197A00B9F")
c.set(".Cnblogs.AspNetCore.Cookies","CfDJ8FHXRRtkJWRFtU30nh_M9mCOUDJ_0cBGFLj8p2QL3oRd3wBUyyslV6IWpnIS2rRu6l5HxY9-lpGnma-CMd4AqKHD1rnytSxhjZlfC-2VpTebUg3Q7oRdleBjNzXWddMrTr_uCeAP7kcaLd-J3Z6EfYjrIrvwDzsjSbWG1n7vU9eimyuZ-69t9-Q9-Jc6gtXq6dohh7jj1v_8IqFLfk6hDMsQx03jNRM-7DEcfWNM1IqWMISIff3-qIazmcR7LyA-RkABczujkrdPqq7m8orA_ZyuQSLFSXDCOBeEAbAQzs-27IagHHNJLUwbH0FwxfIwrw")
s.cookies.update(c)
print("======start======")
print(s.cookies)
print("======end======")
r1=s.get("https://i.cnblogs.com/EditPosts.aspx?opt=1",headers=headers,verify=False)
url2="https://i.cnblogs.com/EditPosts.aspx?opt=1"
#通过WebForms可以看到存草稿请求的body
body={"__VIEWSTATE":"",
"__VIEWSTATEGENERATOR":"FE27D343",
"Editor$Edit$txbTitle":"11",
"Editor$Edit$EditorBody":"<p>11</p>",
"Editor$Edit$Advanced$ckbPublished":"on",
"Editor$Edit$Advanced$chkDisplayHomePage":"on",
"Editor$Edit$Advanced$chkComments":"on",
"Editor$Edit$Advanced$chkMainSyndication":"on",
"Editor$Edit$Advanced$txbEntryName":"",
"Editor$Edit$Advanced$txbExcerpt":"",
"Editor$Edit$Advanced$txbTag":"",
"Editor$Edit$Advanced$tbEnryPassword":"",
"Editor$Edit$lkbDraft":"存为草稿"
}
#发送存草稿请求
r2=s.post(url2,data=body,verify=False)
print("======start======")
print(r.content)
print("======end======")
注意:如果有同名的草稿,需删除后,才能新增草稿。