欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-04-27 16:42:38
为了方便查看自己上传资源情况。不想一次一次的翻阅自己上传资源列表进行查看。写个简单的爬虫,就可以解决这些问题啦。视频演示:代码:# coding=utf-8import urllib.requestimport timeimport reimport osimport requestsfrom bs4 import BeautifulSouppage_num = input("**************你的上传资源是多少页呢?不知道的话,多说点也无妨!*********...

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

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

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

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

视频里面的记事本:

页数:50
用户名:weixin_42859280
积分最低:10

代码。就是为了方便查看自己上传资源所对应的积分。
可以实现进行积分筛选。找出符合自己条件的资源列表。
下面来演示一下。

积分多少都是可以进行筛选。只不过积分低的话,出现的列表内容会比较多。

可以随便找出几个,进行验证一下!
看来还是比较符合的!

提升一下筛选条件!

OK验证没事!
kk 2020-07-21 10-07-31

代码:

一个无需登录即可复制代码的地方:https://www.cnblogs.com/hwpbetter/p/13353644.html

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

OK

本文地址:https://blog.csdn.net/weixin_42859280/article/details/107482544