requests---自动写博客

  前两天写过一个关于session的博客,session登录过后,可以进行一系列的操作,今天通过模拟登录博客园,自动写博客

自动写博客

我们先理下书写的思路:

1.通过request访问博客园;

2.通过session保存cookies;

3.携带保存的cookies进行请求写博客的接口

4.编写博客内容,进行保存,发博客

获取登录cookies

1.通过fiddler\F12进行抓取未登录的cookies值

2.再次抓取Fiddler\F12进行抓取登录后的cookies值

3.把cookies放到session中

# coding:utf-8
import requests
import urllib3
from bs4 import BeautifulSoup
urllib3.disable_warnings()
s = requests.session()
s.verify = False  # 全局的
url = ‘https://passport.cnblogs.com/user/signin‘

headers = {
    "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36"
}
r = s.get(url,headers=headers)
cooks = {
    ".Cnblogs.AspNetCore.Cookies":"XXXXXXXX",
    ".CNBlogsCookie":"XXXXXX"
}
c = requests.cookies.RequestsCookieJar()
c.set(".CNBlogsCookie", cooks[".CNBlogsCookie"])  # 登陆有效的cookies
c.set(".Cnblogs.AspNetCore.Cookies", cooks[".Cnblogs.AspNetCore.Cookies"])
s.cookies.update(c)
url1 = "https://i.cnblogs.com/EditPosts.aspx?opt=1"
r1 = s.get(url1)
if "博客后台管理" in r1.text:
    print("登录成功!")

抓取写博客接口

1.抓取编写博客接口,获取编写内容,查看Raw获取接口内容

2.把这些值通过字典的形式进行编写如:{“name”:“value”}

body = {
    "__VIEWSTATE":"",
    "__VIEWSTATEGENERATOR":"FE27D343",
    "Editor$Edit$txbTitle":"编辑草稿",
    "Editor$Edit$EditorBody":"这是编辑草稿的内容",
    "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":"存为草稿"
}

requests自动写博客

1.重新编写草稿内容,然后通过session进行重新发帖(草稿内容部分进行了改变,方便区分)

# coding:utf-8
import requests
import urllib3
from bs4 import BeautifulSoup
urllib3.disable_warnings()
s = requests.session()
s.verify = False  # 全局的
url = ‘https://passport.cnblogs.com/user/signin‘

headers = {
    "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36"
}
r = s.get(url,headers=headers)
cooks = {
    ".Cnblogs.AspNetCore.Cookies":"XXXXXXXXX",
    ".CNBlogsCookie":"XXXXXX"
}
c = requests.cookies.RequestsCookieJar()
c.set(".CNBlogsCookie", cooks[".CNBlogsCookie"])  # 登陆有效的cookies
c.set(".Cnblogs.AspNetCore.Cookies", cooks[".Cnblogs.AspNetCore.Cookies"])
s.cookies.update(c)
url1 = "https://i.cnblogs.com/EditPosts.aspx?opt=1"
r1 = s.get(url1)
if "博客后台管理" in r1.text:
    print("登录成功!")
body = {
    "__VIEWSTATE":"",
    "__VIEWSTATEGENERATOR":"FE27D343",
    "Editor$Edit$txbTitle":"编辑草稿自动写博客",
    "Editor$Edit$EditorBody":"这是编辑草稿的内容自动写博客",
    "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(url1,headers=headers,data=body)

2.发送请求后通过查看博客园的草稿箱查看是否保存成功

喜欢的朋友们,可以手动试试,好记性不如赖笔头;

如果感觉写的对您有帮助,可以点个关注哦

原文地址:https://www.cnblogs.com/qican/p/11165530.html

时间: 2024-11-20 11:11:40

requests---自动写博客的相关文章

postman---postman自动发博客

前面写了一篇如何通过Cookies值去登录博客园,今天我们来通过登录博客园之后,我们进行通过Postman自动写博客 自动写博客 1.打开Postman.填写博客园对应的Cookies: 2.抓取编写博客的地址和请求参数 3.通过Postman携带Cookies请求编写博客接口 4.进行完成发送保存操作 填写Cookies 这个地方上一篇已经写过了,这里不做过多的介绍了. 具体内容详情见postman---postman通过Cookies登录博客园 抓取博客园编写博客地址 1.通过F12或者Fi

sublime text2自动提交博客到博客园

进入博客园,点击右上角设置 点击博客设置 在页面最下方找到你的网址 打开sublime text2,按下面步骤操作 打开之后,把你的压缩包复制进去 之后在打开箭头指向的文件 修改225行的内容,你的网址,用户名,密码 修改225行的内容,同上(你的网址,用户名,密码) 配置完成,开始写你的博客,写好之后,mac下按 fn+shift+f6之后会在头部插入以下内容(title中得内容是我自己添加的标题) 一切就绪之后,mac下按fn+command+f6自动提交到博客园 sublime text2

(转载)记:从百度空间搬家到博客园--写博客要写的舒服

转自http://www.cnblogs.com/syxchina/archive/2011/10/03/2198468.html 一直都有把百度空间搬家的想法,但由于百度空间我将就的用了快3年了,也写了很多文章,交了很多朋友,实在舍不得,但最近实在忍不住百度空间的限制,字数限制.无代码格式化.不支持windows live writer,每次写博客格式图片处理很是伤心,很多时候甚至不写博客,直接记录在doc文件来的方便省心!但想想平时很多只是汲取与互联网谷歌,不贡献点实在说不过去!下定决心,搬

为什么要复盘,要写博客?

为什么要复盘? 不复盘怎么知道做的这么样,难道全靠别人的评价吗?大多数情况下没有多少反馈会给你?这个也是决定自我进化的速度,这是成长中不断精进的必要过程 什么是复盘? 一个旁观者的角度,给自己刚刚做的事,做一次找茬+点赞+总结 复盘有什么用? 不复盘,永远都是一个新手状态,每次都是第一次,复盘就是要达到做事方法或思维的流程化,正所谓复杂的事流程化,形成自己的最优套路 如何高效复盘? 三个核心关键词,高频.深度.持续 高频:事事有复盘,频率越高进化的速度越快 深度:事事有变化,越深越能发现本质的东

用markdown写博客

目录 用markdown写博客 前言 标题 段落 引用区块 代码块 列表 分隔线 链接 强调.加粗.下划线.删除线 图片 智能链接 表格 转义序列 用markdown写博客 前言 博客园支持用markdown语法写博客.markdown是什么东西?他是一套中间格式化文本的语法,用他写文章在支持这个语法的排版系统里面,会生成对应的排版格式.因为这套中间语言,那么我们就不用学习各种平台独有的排版方式,节省时间.当然,最重要的是markdown本身易于书写,否则就没有使用价值了. 下面我们来学习一下m

使用OpenLiveWriter写博客

1.下载 下载地址:https://pan.baidu.com/s/16qFqE8w7CTpJhSlnjg0EeA 已将安装包和插件包统一打包. 1.OpenLiveWriterSetup.exe 2.撰写博客需要的代码插入插件 如图 2.安装 (1)先执行安装程序 (2)初次使用需要配置(同时管理多个博客增加账户也需要配置) 选择最后一项 填入博客地址和博客的账号密码 (3)拷贝插件,增加OpenLiveWriter的代码插入功能 解压OLW_V1.0.zip压缩包,按提示操作即可 3.注意事

用Typora写博客不要太爽

目录 用Typora写博客不要太爽 问题: 解决: 说明: 用Typora写博客不要太爽 问题: 在本人的博客中,进入管理.选项,可以看到:默认编辑器 TinyMCE Markdown TextBox 第一种估计用的人最多,我连续多年就是用这个写博客的,还写得不亦乐乎,不知疲倦.然而,直到开始学习MarkDown之后,才知道第一种写法的效率,实在太低了.第三种写法才叫灵活强悍,可以直接写最简单的txt格式(纯文本),也可以直接写html代码!老少咸宜,雅俗通吃. 今天要讲的是第二种写法:Mark

关于写博客,看博客

每次看到很多人坚持写那么多的好博客,我都会产生怎么自己不写博客的想法.于是乎,在激情的驱使下就会随手写几段文字,然后就不了了之了. 今天又看了cici珵的博客(北大cs本科,博士,美女),再次萌生了写自己的博客的想法. (似乎又要开始写自己这个人怎么怎么样,兴趣广泛,但是做事情不够努力:目标很多,但是不能坚持去做,这些对个人的分析了.反正每次真正着手做一件事情之前总是想分析一下之前怎么怎么做的不好.) 关于cici珵,是昨天刷知乎,看到覃超(覃超大魔王)的知乎专栏文章,关于楼教主从google离

纪念下今天,开始写博客了

还有一年大学毕业,借着剩余稍微空闲的时间,总结下自己所学.从专注学习web前端算起来快有一年了. 前前后后经历了许多.在web这个领域,除了自学意外,程序员之间口口相传才能深入学习,总结是必不可少的.希望自己能坚持下去 纪念下今天,开始写博客了,布布扣,bubuko.com