点击上方“Python进击者”,选择“星标”公众号
超级无敌干货推送给你!!
Python进击者
第182篇原创文章
大家好,我是Kuls。
没错,那位博主就是我。
今年其实准备在csdn和知乎发展发展,但是一打开csdn,我人傻了。
原来我的公众号和csdn博客同步了,一些转载的文章也上传了上去。
为了把这些文章给删除,我一个一个在后台点,人都点傻了。
忽然想到,这种机器化的事情直接交给Python来解决不就行了?
于是就有了下文
首先,我们进入自己的博客主页
https://blog.csdn.net/qq_36547531/article/list/1
上面就是我的博客主页,如果感兴趣,可以关注一波,今年会在这上面进行一些写作。
这里需要注意的是,我们删除csdn博客需要在博客主页进行,后台删除拿不到数据,目前还没发现具体原因,这个我后续再看看。
思路: 分析一下结构,其实就是一个list,我们拿到文章的list,然后对其进行是否原创的判断,然后获取到文章的id,进行删除的请求。
整体的思路大概就是上面这样。
具体如何实现,看我下面的分析。
1、拿到文章id
我们去请求博客主页,记住headers里面带cookie。
https://blog.csdn.net/qq_36547531/article/list/1
然后会发现返回的是html,这就需要我们去解析html了。
这里我用到的是BeautifulSoup
from bs4 import BeautifulSoup
这里我拿出list中的一个模块来分析,首先我们先抓取class为article-item-box部分
然后可以从data-articleid中拿到文章的id。
2、判断是否为转载
id拿到手,就来判断是否为转载
原创
转载
看上面两个例子,我们会发现class中有一点不一样,type-1和type-2。
这就好说了,直接获取type-2,如果拿到了就是转载,拿不到就是原创。
3、删除提交
删除提交比较简单,通过抓包,我们会发现删除请求的地址如下:
https://blog.csdn.net/phoenix/web/v1/articleListApi/del
post请求,其中data如下:
{'articleId': 1111111111}
这就很好说了。
以上操作完成后,基本就完事了。
这里就需要自己去添加一下页码的循环。
https://github.com/hellokuls/python-course/blob/master/csdn.py
最后,希望大家给kuls多多点赞呀!
今年的计划是保证篇篇原创,面试系列会持续更新。
有任何的问题都可以加我微信哦~
一个高中就混迹互联网的小渣渣,目前还在大学摸鱼
如果想跟我交个朋友,可以加我微信:LLLLLLS123
交朋友暗号【朋友】
你好啊
我是kuls
欢迎加我微信交流学习
阅读更多精彩文章,可以关注我!
关注公众号回复“pdf”
无套路领取原创Django、flask全套教程
⬇️