【Apipost】批量刪除我的51CTO文章

文章目錄

  • 一、序
  • 二、API分析
  • 三、Apipost測試
  • 四、腳本
  • 五、Apipost中完成

一、序

去年開始再51CTO同步更新文章,一年多過去了,只漲了3個粉絲。看了下這個平臺就是賣課、搞培訓的,退出了。決定把文章也刪除了(有人私信我說專門注冊了個賬號感謝我的一篇文章,還挺有意義的)。

不過這和C站一樣,文章不支持批量操作,100多篇文章,手動刪了幾篇后就不想繼續了。于是決定寫個python腳本(聯系客服應該也能全部刪除吧)。

在這里插入圖片描述

之前寫過批量查詢CSDN文章質量分的文章,本文思路是一樣的。

【python】我用python寫了一個可以批量查詢文章質量分的小項目(純python、flask+html、打包成exe文件)

二、API分析

在51CTO的創作中心,文章列表頁面,打開瀏覽器的檢查,然后刪除一篇文章,就可以看到刪除操作的http請求參數:
在這里插入圖片描述

載荷部分是具體操作(delBlog)和文章id,只需要在http請求的body里面設置要刪除的文章的id,就可以刪除對應的文章了。
在這里插入圖片描述

下面的list操作,就是獲取文章列表信息,從中提取出文章id就可以了:
在這里插入圖片描述

核心操作就這兩個。

三、Apipost測試

還是用Apipost來測試一下吧。

把operation操作的參數填寫在Apipost里面就可以了。

請求頭:
在這里插入圖片描述

請求體:
在這里插入圖片描述

現在開始測試接口,以這篇文章為例:
在這里插入圖片描述

id7883577

在請求體中將id設置為7883577。點擊發送,可以看到操作成功:
在這里插入圖片描述

文章已經被刪除:
在這里插入圖片描述

批量獲取文章id的操作是類似的,不過獲取id請求體只需要cookie就可以了(按照前面的全填,永遠只返回第一頁的信息)

在page這里設置頁面即可(和csdn一樣,是按page來顯示的,不是全部返回):
在這里插入圖片描述

四、腳本

參考之前批量查詢文章質量分代碼。

五、Apipost中完成

直接在Apipost中獲取文章id,然后保存下來,再將這些id對應的文章全部刪除。

首先是獲取文章id并保存,可以使用Apipost的“后執行腳本”功能,即編寫腳本(js)對http請求(POST)的響應進行進一步操作。

在這里插入圖片描述

腳本:

if (response.rawBody) {try {let responseData = JSON.parse(response.rawBody);let blogIds = responseData.data.list.map(item => item.blog_id);apt.globals.set("blog_ids", blogIds);console.log(blogIds);} catch (error) {console.error("解析JSON時出錯: ", error);}
} else {console.error("響應體為空");
}

注意這里是rawBody,而通常的response響應體名稱是body。自己先打印response(console.log(response);)就可以看到了。

現在,這些id已經保存到了全局變量blogIds 中了。在刪除文章的接口中使用這個全局變量就可以了。

因為每次POST只能刪除一篇文章(即一個id),說以需要再刪除文章的接口中添加預處理腳本,對前面的全局變量進行設置,每次只取一個。

// 從全局變量中獲取 blog_ids 字符串,并將其轉換回數組
let blogIds = JSON.parse(apt.globals.get("blog_ids") || "[]");
let blogId = blogIds.shift().toString();  // 將 blog_id 轉換為字符串
// 將更新后的數組轉換回字符串,并保存到全局變量中
apt.globals.set("blog_ids", JSON.stringify(blogIds));
// 保存 blog_id 到全局變量中
apt.globals.set("blog_id", blogId);

然后再請求中將ids設置為對應的變量:

在這里插入圖片描述


現在,點擊“發送”,就會刪除全局變量中保存的多個文章id對應的文章了。

比如我獲取了一頁(page)文章對應的id,假設有10個,那么全局變量就會保存這10篇文章的id,然后在刪除文件的接口中刪除這些id對應的文章。
在這里插入圖片描述

不過有一個問題,刪除一篇文章就要點擊一次“發送”。這種方法還是不如寫腳本來得快(循環發送,刪除)。Apipost應該有相應的這種高級功能,我還沒學。

在這里插入圖片描述

即使不寫腳本,也比一篇一篇地刪除快了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/212812.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/212812.shtml
英文地址,請注明出處:http://en.pswp.cn/news/212812.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ToolkenGPT:用大量工具增強LLM

深度學習自然語言處理 原創作者:cola 用外部工具增強大型語言模型(LLM)已經成為解決復雜問題的一種方法。然而,用樣例數據對LLM進行微調的傳統方法,可能既昂貴又局限于一組預定義的工具。最近的上下文學習范式緩解了這一問題,但有…

Shell 常用命令詳解-上

Shell 常用命令詳解-上 1.目錄查閱相關命令2.文件操作相關命令 1.目錄查閱相關命令 ll 命令 命令描述:ll命令用于顯示指定工作目錄下的內容。 命令格式:ll [參數] [目錄名]。 參數說明: 參數說明-a顯示所有文件及目錄(包括隱藏文…

【機器學習】041_模型開發迭代過程

一、模型開發的一般步驟 1. 明確研究問題 確定問題的組成和結果,明晰問題是分類問題還是回歸問題 2. 決定系統總體架構 ①理解數據:采集(爬取)數據,生成(導入)數據,進行數據清洗…

代碼隨想錄二刷 |二叉樹 |101. 對稱二叉樹

代碼隨想錄二刷 |二叉樹 |101. 對稱二叉樹 題目描述解題思路 & 代碼實現遞歸法迭代法使用隊列使用棧 題目描述 101.對稱二叉樹 給你一個二叉樹的根節點 root , 檢查它是否軸對稱。 示例 1: 輸入:root [1,2,2,…

zcms企業官網建站系統源碼搭建-支持頁面自定義

1.支持mysql,sqlite,access三種數據庫。 2.模板和標簽與asp版的zzzcms通用。 3.asp版的zzzcms的access數據庫可直接使用。 4.支持手機站。 (增刪改查不做描述): 網站信息 名稱,logo,微信&…

基于OpenCV的流水線包裝箱檢測計數應用(附源碼)

導 讀 本文主要介紹基于OpenCV的流水線包裝箱檢測計數應用,并給出源碼。 資源下載 完整代碼和視頻下載地址: https://github.com/freedomwebtech/rpi4-conveyor-belt-boxces-counter 核心代碼如下(cboxtest.py): import cv2import numpy as npfrom tracker import*cap=c…

【MYSQL】單表查詢

查詢語法: select 字段(*表示全字段) from 數據表 【where 條件表達式】 【group by 分組字段【having 分組條件表達式】】 【order by 排序字段【asc | desc】】 例子: 教職工表Teacher(Tno, TName, age, sal, mgr, DNo)&#…

C# 圖解教程 第5版 —— 第17章 轉換

文章目錄 17.1 什么是轉換17.2 隱式轉換17.3 顯示轉換和強制轉換17.4 轉換的類型17.5 數字的轉換17.5.1 隱式數字轉換17.5.2 溢出檢測上下文17.5.3 顯示數字轉換 17.6 引用轉換17.6.1 隱式引用轉換17.6.2 顯式引用轉換17.6.3 有效顯式引用轉換 17.7 裝箱轉換17.7.1 裝箱是創建副…

前端發起更改數據請求后再獲取后端數據發現數據并未更改的一個解決辦法

前端發起更改數據請求后再獲取后端數據發現數據并未更改的一個解決辦法 問題再現 async function refuseRefund(id,type){if(confirm(確定拒絕?)){await fetch(http://127.0.0.1:3000/api/refuseRefund, {method: POST,headers: {Content-type: application/json}…

vue項目搭建---1.搭建基礎的框架

目錄 1. pnpm下載1.1 安裝1.2 差異1.3 鏡像源設置 2. 項目2.1 vite創建項目2.2 項目配置2.3 piniavue-routermain.jsstore/index.jsrouter/index.jsvue文件里使用示例 2.4 eslint prettier.eslintrc.js.eslintignore.prettierrc 2.5 樣式2.6 commitizenpackage.json.cz-config…

MySQL - 聚簇索引和非聚簇索引,回表查詢,索引覆蓋,索引下推,最左匹配原則

聚簇索引和非聚簇索引 聚簇索引和非聚簇索引是 InnoDB 里面的叫法 一張表它一定有聚簇索引,一張表只有一個聚簇索引在物理上也是連續存儲的 它產生的過程如下: 表中有無有主鍵索引,如果有,則使用主鍵索引作為聚簇索引;…

【Scala】Scala中的一些基本數據類型的特性 列表、元組、構造器、單例對象、伴生類、伴生對象、抽象類與特質

列表 使用List(“”,“”,“”)去聲明 sliding 和 groued表示迭代器 val iter List("Hadoop", "Spark", "Scala") sliding 2// sliding 和 groued 是有區別的while (iter.hasNext){println(iter.next())}for (elem <- iter){println(elem)}…

極速學習SSM之SpringMVC筆記

文章目錄 一、SpringMVC簡介1、什么是MVC2、什么是SpringMVC3、SpringMVC的特點 二、HelloWorld1、開發環境2、創建maven工程a>添加web模塊b>打包方式&#xff1a;warc>引入依賴 3、配置web.xmla>默認配置方式b>擴展配置方式 4、創建請求控制器5、創建springMVC…

Kafka 最佳實踐:構建可靠、高性能的分布式消息系統

Apache Kafka 是一個強大的分布式消息系統&#xff0c;被廣泛應用于實時數據流處理和事件驅動架構。為了充分發揮 Kafka 的優勢&#xff0c;需要遵循一些最佳實踐&#xff0c;確保系統在高負載下穩定運行&#xff0c;數據可靠傳遞。本文將深入探討 Kafka 的一些最佳實踐&#x…

四. 基于環視Camera的BEV感知算法-環視背景介紹

目錄 前言0. 簡述1. 環視背景介紹2. 環視思路3. 主流基于環視Camera的算法詳解總結下載鏈接參考 前言 自動駕駛之心推出的《國內首個BVE感知全棧系列學習教程》&#xff0c;鏈接。記錄下個人學習筆記&#xff0c;僅供自己參考 本次課程我們來學習下課程第四章——基于環視Camer…

基于Spring+Spring boot的SpringBoot在線電子商城管理系統

SSM畢設分享 基于SpringSpring boot的SpringBoot在線電子商城管理系統 1 項目簡介 Hi&#xff0c;各位同學好&#xff0c;這里是鄭師兄&#xff01; 今天向大家分享一個畢業設計項目作品【基于SpringSpring boot的SpringBoot在線電子商城管理系統】 師兄根據實現的難度和等級…

高云GW1NSR-4C開發板M3硬核應用

1.M3硬核IP下載&#xff1a;Embedded M3 Hard Core in GW1NS-4C - 科技 - 廣東高云半導體科技股份有限公司 (gowinsemi.com.cn) 特別說明&#xff1a;IDE必須是1.9.9及以后版本&#xff0c;1.9.8會導致編譯失敗&#xff08;1.9.8下1.1.3版本IP核可用&#xff09; 以下根據官方…

SQLMap介紹

預計更新SQL注入概述 1.1 SQL注入攻擊概述 1.2 SQL注入漏洞分類 1.3 SQL注入攻擊的危害 SQLMap介紹 2.1 SQLMap簡介 2.2 SQLMap安裝與配置 2.3 SQLMap基本用法 SQLMap進階使用 3.1 SQLMap高級用法 3.2 SQLMap配置文件詳解 3.3 SQLMap插件的使用 SQL注入漏洞檢測 4.1 SQL注入…

vue3中關于echars的使用

今天介紹一個好用的插件echars&#xff0c;一個可視化插件Apache ECharts 一、使用步驟 1、安裝 npm install echarts --save 2、導入 import * as echarts from echarts 3、正式使用 echars的使用非常的簡單&#xff0c;直接點擊官網有現成的代碼的可用 代碼示例 <t…

微服務——服務保護Sentinel

雪崩問題 在單體項目里面&#xff0c;如果某一個模塊出問題會導致整個項目都有問題。 在微服務項目里面&#xff0c;單獨一個服務出問題理論上是不會影響別的服務的。 但是如果有別的業務需要調用這一個模塊的話還是會有問題。 問題產生原因和解決思路 最初那只是一個小小…