懒人必备 |通过爬虫 筛选以及查看CSDN 满足相应积分的资源列表 简单好用

为了方便查看自己上传资源情况。

不想一次一次的翻阅自己上传资源列表进行查看。

写个简单的爬虫,就可以解决这些问题啦。

视频演示:https://www.bilibili.com/video/BV1qa4y1a7WS

视频里面的记事本:

页数:50
用户名:weixin_42859280
积分最低:10
 
代码。就是为了方便查看自己上传资源所对应的积分。
可以实现进行积分筛选。找出符合自己条件的资源列表。
下面来演示一下。
 
积分多少都是可以进行筛选。只不过积分低的话,出现的列表内容会比较多。
 
可以随便找出几个,进行验证一下!
看来还是比较符合的!
 
提升一下筛选条件!
 
OK验证没事!
kk 2020-07-21 10-07-31

代码:

 1 # coding=utf-8
 2 import urllib.request
 3 import time
 4 import re
 5 import os
 6 import requests
 7 from bs4 import BeautifulSoup
 8 page_num = input("**************你的上传资源是多少页呢?不知道的话,多说点也无妨!**************\n请输入:")
 9 username=input("请输入你的CSDN博客用户ID,例如:https://blog.csdn.net/8888 则博客ID为:888  \n请输入:")
10 download_score=input("请输入你希望看到的资源最小下载分数是多少?\n请输入:")
11 num = 1
12 sum = 1
13 while num<int(page_num):
14     url='https://download.csdn.net/user/'+str(username)+'/uploads/'+str(num)
15     num = num+1
16     k = {'user-agent': 'Mozilla/5.0'}
17     r = requests.get(url,headers = k,timeout = 30)
18     r.raise_for_status()
19     r.encoding = r.apparent_encoding
20     soup = BeautifulSoup(str(r.text), "html.parser")
21     data = soup.find_all(class_="my_resource")
22     data1=BeautifulSoup(str(data),"html.parser")
23     data2 = data1.find_all(class_="card clearfix")
24     for i in data2:
25         need_data=BeautifulSoup(str(i),"html.parser")
26         temp_url=need_data.find(class_="content").find('a')['href']
27         temp_score=need_data.find(class_="score")
28         pat = re.compile('<[^>]+>')  # 去掉尖括号里面的东西
29         pat1 = re.compile(r'\d+\.?\d*')
30         p0 = pat.sub('', str(temp_score))
31         p1 = pat1.findall(str(p0))
32         if int(p1[0]) >= int(download_score):
33             print("\n*****************第" + str(sum) + "个**************")
34             print("******下载积分为:"+str(p1[0])+"  \n******  对应下载链接:https://download.csdn.net/"+str(temp_url))
35             sum = sum + 1
36 print("符合条件的共计:"+str(sum-1))

OK

posted @ 2020-07-21 10:31  努力变胖-HWP  阅读(285)  评论(3编辑  收藏  举报