分享77个NET源码,总有一款适合您

news2024/11/24 18:38:26

NET源码

分享77个NET源码,总有一款适合您

NET源码下载链接:https://pan.baidu.com/s/1vhXwExVAye5YrB77Vxif8Q?pwd=zktx 

提取码:zktx


下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载后可以看到。

import os
from time import sleep

import requests
from bs4 import BeautifulSoup
from docx import Document
from docx.shared import Inches

from framework.access.sprider.SpriderAccess import SpriderAccess
from framework.base.BaseFrame import BaseFrame
from framework.pulgin.Tools import Tools
from sprider.business.DownLoad import DownLoad
from sprider.model.SpriderEntity import SpriderEntity
from sprider.business.SpriderTools import SpriderTools
from sprider.business.UserAgent import UserAgent

class ChinaZCode:
    page_count = 1  # 每个栏目开始业务content="text/html; charset=gb2312"
    base_url = "https://down.chinaz.com"  # 采集的网址  https://sc.chinaz.com/tag_ppt/zhongguofeng.html
    save_path = "D:\\Freedom\\Sprider\\ChinaZ\\"
    sprider_count = 77 # 采集数量

    word_content_list = []
    folder_name = ""
    first_column_name = "NET"
    sprider_start_count=66 #已经采集完成第136个 debug

    max_pager=16 #每页的数量
    haved_sprider_count = 0  #

    # 如果解压提升密码错误 ,烦请去掉空格。如果还是不行烦请下载WinRAR
    # https: // www.yadinghao.com / file / 393740984E6754
    # D18635BF2DF0749D87.html
    # 此压缩文件采用WinRAR压缩。
    # 此WinRAR是破解版。

    def __init__(self):
        #A5AndroidCoder().sprider("android", "youxi", 895)  #
        pass

    def sprider(self, title_name="Go"):
        """
        采集 https://down.chinaz.com/class/572_5_1.htm
        NET https://down.chinaz.com/class/572_4_1.htm
        :return:
        """
        if title_name == "PHP":
            self.folder_name = "PHP源码"
            self.second_column_name = "572_5"
        elif title_name == "Go":
            self.folder_name = "Go源码"
            self.second_column_name = "606_572"
        elif title_name == "NET":
            self.folder_name = "NET源码"
            self.second_column_name = "572_4"
        first_column_name=title_name

        merchant = int(self.sprider_start_count) // int(self.max_pager) + 1

        second_folder_name = str(self.sprider_count) + "个" + self.folder_name
        self.save_path = self.save_path+ os.sep + "Code" + os.sep+first_column_name+os.sep +  second_folder_name
        print("开始采集ChinaZCode"+self.folder_name+"...")
        sprider_url = (self.base_url + "/class/{0}_1.htm".format(self.second_column_name))
        #print(sprider_url)
        #sprider_url = (self.base_url + "/" +  self.first_column_name + "/" + second_column_name + ".html")
        response = requests.get(sprider_url, timeout=10, headers=UserAgent().get_random_header(self.base_url))
        response.encoding = 'UTF-8'
        soup = BeautifulSoup(response.text, "html5lib")
        #print(soup)
        div_list =soup.find('div', attrs={"class": 'main'})
        div_list=div_list.find_all('div', attrs={"class": 'item'})
        #print(div_list)
        laster_pager_ul = soup.find('ul', attrs={"class": 'el-pager'})
        laster_pager_li = laster_pager_ul.find_all('li', attrs={"class": 'number'})
        laster_pager_url = laster_pager_li[len(laster_pager_li)-1]

        #<a href="zhongguofeng_89.html"><b>89</b></a>

        page_end_number = int(laster_pager_url.string)
        #print(page_end_number)
        self.page_count = merchant

        while self.page_count <= int(page_end_number):  # 翻完停止
            try:
                if self.page_count == 1:
                    self.sprider_detail(div_list,self.page_count,page_end_number)
                else:
                    if self.haved_sprider_count == self.sprider_count:
                        BaseFrame().debug("采集到达数量采集停止...")
                        BaseFrame().debug("开始写文章...")
                        self.builder_word(self.folder_name, self.save_path, self.word_content_list)
                        BaseFrame().debug("文件编写完毕,请到对应的磁盘查看word文件和下载文件!")
                        break
                    next_url =self.base_url + "/class/{0}_{1}.htm".format(self.second_column_name,self.page_count )
                    response = requests.get(next_url, timeout=10, headers=UserAgent().get_random_header(self.base_url))
                    response.encoding = 'UTF-8'
                    soup = BeautifulSoup(response.text, "html5lib")
                    div_list = soup.find('div', attrs={"class": 'main'})
                    div_list = div_list.find_all('div', attrs={"class": 'item'})

                    self.sprider_detail(div_list, self.page_count,page_end_number)
                    pass
            except Exception as e:
                print("sprider()执行过程出现错误" + str(e))
                pass
            self.page_count = self.page_count + 1  # 页码增加1

    def sprider_detail(self, element_list, page_count,max_page):
        try:
            element_length = len(element_list)

            self.sprider_start_index = int(self.sprider_start_count) % int(self.max_pager)
            index = self.sprider_start_index

            while index < element_length:
                a=element_list[index]
                if self.haved_sprider_count == self.sprider_count:
                    BaseFrame().debug("采集到达数量采集停止...")
                    break
                index = index + 1
                sprider_info = "正在采集第" + str(page_count) + "页的第" + str(index) + "个资源共"+str(max_page)+"页资源"
                print(sprider_info)

                #title_image_obj = a.find('img', attrs={"class": 'lazy'})
                url_A_obj=a.find('a', attrs={"class": 'name-text'})
                next_url = self.base_url+url_A_obj.get("href")
                coder_title = url_A_obj.get("title")

                response = requests.get(next_url, timeout=10, headers=UserAgent().get_random_header(self.base_url))
                response.encoding = 'UTF-8'
                soup = BeautifulSoup(response.text, "html5lib")
                #print(soup)
                down_load_file_div = soup.find('div', attrs={"class": 'download-list'})
                if down_load_file_div is None:
                    BaseFrame().debug("应该是多版本的暂时不下载因此跳过哦....")
                    continue

                down_load_file_url =self.base_url+down_load_file_div.find('a').get("href")

                #image_obj = soup.find('img', attrs={"class": "el-image__inner"})
                #image_src =self.base_url+image_obj.get("src")
                #print(image_src)

                codeEntity = SpriderEntity()  # 下载过的资源不再下载
                codeEntity.sprider_base_url = self.base_url
                codeEntity.create_datetime = SpriderTools.get_current_datetime()
                codeEntity.sprider_url = next_url
                codeEntity.sprider_pic_title = coder_title
                codeEntity.sprider_pic_index = str(index)
                codeEntity.sprider_pager_index = page_count
                codeEntity.sprider_type = "code"
                if SpriderAccess().query_sprider_entity_by_urlandindex(next_url, str(index)) is None:
                    SpriderAccess().save_sprider(codeEntity)
                else:
                    BaseFrame().debug(coder_title + next_url + "数据采集过因此跳过")
                    continue

                if (DownLoad(self.save_path).down_load_file__(down_load_file_url, coder_title, self.folder_name)):
                    #DownLoad(self.save_path).down_cover_image__(image_src, coder_title)  # 资源的 封面
                    sprider_content = [coder_title,
                                       self.save_path + os.sep + "image" + os.sep + coder_title + ".jpg"]  # 采集成功的记录
                    self.word_content_list.append(sprider_content)  # 增加到最终的数组
                    self.haved_sprider_count = self.haved_sprider_count + 1
                    BaseFrame().debug("已经采集完成第" + str(self.haved_sprider_count) + "个")
            if (int(page_count) == int(max_page)):
                self.builder_word(self.folder_name, self.save_path, self.word_content_list)
                BaseFrame().debug("文件编写完毕,请到对应的磁盘查看word文件和下载文件!")
        except Exception as e:
            print("sprider_detail:" + str(e))
            pass

 

web表单智能填充器 v2020
学校微机室自动管理系统 v1.3
动易BizIdea企业电子商务管理系统 v6.2.0
优索教务管理系统 v9.3.2
易点内容管理系统 DianCMS v7.1.0 SQL版
易点内容管理系统 DianCMS v7.1.0 ACC版
E桶金源码交易系统 v1.5
JumbotCms v7.3.1 源码版
自适应企业网站模板源码 v2.0
职业考证在线学习平台 v1.0 共享版
KesionICMS智能建站系统 v8.2020.12.30
辖区核酸检测管理系统 v1.0.0
dboxShare开源企业网盘系统 v2.0.0.2012
高博学校人事工资管理系统 v20201028
微厦企业商学院学习平台 v2020 社区版
高博学校网站内容管理系统 v20201015
DreamerShop梦想家网店系统 v6.0
启明星个人小博客blog v2.0
启明星视频管理系统video v33.0
netnr-blog博客系统 v2.x
启明星员工工资自助查询系统 v1.0
逐浪CMS v8.1.5
工作易人才系统 v200715
启明星工程项目投标系统bid v26.0
SiteServer CMS v6.14 正式版
优索学生成绩管理系统 v9.2.4
优索绩效考核系统 v7.3.0
微点慧采电子招标采购平台 v1.0
AngelShop外贸商城网站管理系统 v1.0
LebiShop多语言网店系统 v7.0.06
ASP.NET MVC通用角色权限管理系统源码 v2.0
企业信使 v2.0
新乙王企业网站内容管理cms系统源码 v4.2
启明星工作日志Worklog系统 v31.0
魔方CRM客户管理系统 v2
QCRM客户关系管理系统 v1.1.4
Util6 MIS(优六综合管理系统) v2.7
汽车网程序E-AUTO X3.0 v2019.9.30
财务公司网站模板(HDHCMS) v1.0
GOODNET中英文企业网站源码 v2.0
物流公司网站源码 v2.0
进销存管理系统 v1.0.0
售卡卡盟商城 v1.0.0
微商客户分级代理发货系统 v1.0.0
新翔驾校综合管理系统 v1.0
启明星采购系统 purchase(含手机版) v30.0
近乎(spacebuilder) v5.3.1
LdCms.NetCore网站内容信息管理系统 v1.0.1
PageAdmin学校网站管理系统 v4.0.07
推网企业网站系统 v1.5
装饰设计网站源码(包括手机版) v2.0
超强自定义问卷调查系统 v2019
KesionIMALL在线商城系统 v6.0
KesionICMS智能建站系统 v6.0
小书童开源免费二维码批量生成工具 v1.0
Oauth2统一登录平台 v1.2
企站帮微商城系统Access版 v1.4
工资查查移动工资条 v1.0.1
Zoomla!逐浪CMS2 x3.9.6
KesionIEXAM在线考试系统 v6.0.181224
档案信息管理系统 v2.0
pageadmin企业网站管理系统 v4.0 build181228
启明星员工请假系统appform v25.0
Tmmi Web Api接口自动测试软件 v0.3.0
公共财产管理系统 v1.0
试客源码试客系统试用程序 v3.6
启明星员工档案管理系统profile v23.0
乡巴佬淘宝客 v2.18.0915
营销型企业网站源码(包含手机版) v2.0
WebBoxCMS企业网站系统 v2.3.17  UTF8
乘风asp.net探针 v1.3
中搜企业建站系统 v1.0
kkWish订单管理系统 v1.0
点触小程序平台源码.NETCORE版本 v1.19
懒人工作通OA SqlServer版 v6.35
乐彼多语言网上商城系统(LebiShop) v5.1.17 .NET开源版
新翔通用人事管理系统 v1.0

import os


# 查找指定文件夹下所有相同名称的文件
def search_file(dirPath, fileName):
    dirs = os.listdir(dirPath)  # 查找该层文件夹下所有的文件及文件夹,返回列表
    for currentFile in dirs:  # 遍历列表
        absPath = dirPath + '/' + currentFile
        if os.path.isdir(absPath):  # 如果是目录则递归,继续查找该目录下的文件
            search_file(absPath, fileName)
        elif currentFile == fileName:
            print(absPath)  # 文件存在,则打印该文件的绝对路径
            os.remove(absPath)

 

最后送大家一首诗:

山高路远坑深,
大军纵横驰奔,
谁敢横刀立马?
惟有点赞加关注大军。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154496.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Html 3D旋转相册制作

程序示例精选 Html 3D旋转相册制作 如需安装运行环境或远程调试&#xff0c;见文章底部微信名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<Html 3D旋转相册制作>>编写代码&#xff0c;代码整洁&#xff0c;规则&#xff0c;易读。 学习…

zabbix监控主机

zabbix官网 zabbix分为zabbix server&#xff08;zabbix服务端&#xff0c;用来展示监控的&#xff09;和zabbix-agent&#xff08;zabbix客户端用来收集数据的&#xff09; zabbix-agent客户端有两种工作模式&#xff0c;被动模式&#xff08;由zabbix服务来采集数据&#xff…

二十二、Kubernetes中Pod调度第四篇污点(容忍)调度详解、实例

1、概述 在默认情况下&#xff0c;一个Pod在哪个Node节点上运行&#xff0c;是由Scheduler组件采用相应的算法计算出来的&#xff0c;这个过程是不受人工控制的。但是在实际使用中&#xff0c;这并不满足的需求&#xff0c;因为很多情况下&#xff0c;我们想控制某些Pod到达某…

魔方爱好者快来康康,困难的平面魔方来了!

前言和效果图我今天看到一个网站&#xff0c;就是关于魔方的&#xff0c;里面二阶魔方引起了我的兴趣。https://rubiks-cube-solver.com/2x2/进去后你们可以看到&#xff0c;二阶魔方的平面展开图&#xff0c;复原也更加困难。虽然是英文的&#xff0c;但我还是玩得不亦乐乎。好…

查看GPU使用情况和设置CUDA_VISIBLE_DEVICES

文章目录一、简介二、查看GPU状态和信息三、使用3.1临时设置&#xff08;临时设置方法一定要在第一次使用 cuda 之前进行设置&#xff09;3.2python 运行时设置3.3永久设置四、参考资料一、简介 服务器中有多个GPU&#xff0c;选择特定的GPU运行程序可在程序运行命令前使用&am…

企业舆情监控排查什么,TOOM讲解企业舆情监控工作方案?

互联网时代&#xff0c;企业舆情发生因素很多&#xff0c;如果不能及时监控解决&#xff0c;就会引发无限舆情发展&#xff0c;进而影响到企业品牌声誉&#xff0c;引发企业信用危机&#xff0c;所以就需要做好企业舆情监控&#xff0c;接下来我们简单了解企业舆情监控排查什么…

CMMI的五个级别及其特征简述

CMMI 一共分五个级别&#xff0c;一级最低&#xff0c;五级最高&#xff0c;一般企业初次认证CMMI从三级开始。 1、CMMI一级&#xff0c;完成级。在完成级水平上&#xff0c;企业对项目的目标与要做的努力很清晰。项目的目标得以实现。一般来说&#xff0c;公司的初始阶段就…

【C进阶】指针笔试题汇总

家人们欢迎来到小姜的世界&#xff0c;<<点此>>传送门 这里有详细的关于C/C/Linux等的解析课程&#xff0c;家人们赶紧冲鸭&#xff01;&#xff01;&#xff01; 指针笔试题前言一、题1&#xff08;一&#xff09;题目&#xff08;二&#xff09;答案及解析&#…

【Python】函数——模块与函数的导入

概述 为了方便使用函数&#xff0c;我们可以将函数存储在称为模块的独立文件中&#xff0c;再将模块导入到主程序中&#xff0c;导入一个模块需要使用import语句。 导入整个模块 模块是扩展名为.py的文件 1、导入某个模块 语法为&#xff1a; import module_name 2、导入…

[oeasy]python0043_八进制_oct_octal_october_octave

八进制(oct) 回忆上次内容 什么是 转义&#xff1f; 转义转义 转化含义\ 是 转义字符\n、\r是 转义序列 还有什么 转义序列 吗&#xff1f; \a是 响铃\b 退格键\t 水平制表符 tab键\v、\f 实现喂纸不回车 通过 16进制数值 转义 \xhh输出 (hh)16进制对应的ascii字符 如果我们不…

Portainer使用docker compose搭建nacos并初始化MySQL、Portainer stack搭建nacos并初始化MySQL

Portainer使用docker compose搭建nacos初始化MySQL、Portainer stack搭建nacos初始化MySQL新建stack(堆栈)添加stack(堆栈)名称添加docker-compose规则配置环境变量上传初始化sql文件找初始化sql文件nacos初始化mysql-schema.sql文件内容上传sql文件到初始化挂载目录部署stack(…

打印机不打印故障简单排除方法

日常工作中经常会遇到打印机不能打印的情况&#xff0c;那么又没有专业的技术人员在场帮忙的情况下我们也可以自己动手简单的处理一下故障&#xff0c;可以尝试以下的方法进行简单的故障排除&#xff1b; 一、使打印机处于联机状态&#xff0c;如果打印机没有处于联机状态&…

医疗影像工具LEADTOOLS 入门教程: 检测和提取 MICR - 控制台 C#

LEADTOOLS是一个综合工具包的集合&#xff0c;用于将识别、文档、医疗、成像和多媒体技术整合到桌面、服务器、平板电脑、网络和移动解决方案中&#xff0c;是一项企业级文档自动化解决方案&#xff0c;有捕捉&#xff0c;OCR&#xff0c;OMR&#xff0c;表单识别和处理&#x…

基于STM32或STC的手势控制MP3语音播放器的设计

一. 系统设计框图 区别于传统设计中的按键开关控制&#xff0c;本设计可以实现通过手势控制MP3播放器。采用STM32或STC15单片机和PAJ7620手势模块&#xff0c;能够识别九种手势&#xff0c;分别为上下左右前后&#xff0c;顺时针&#xff0c;逆时针&#xff0c;挥动。在本设计…

SpringBoot视图解析与模板引擎

目录 1、视图解析 1、视图解析原理流程 2、模板引擎-Thymeleaf 1、thymeleaf简介 2、基本语法 3、设置属性值-th:attr 4、迭代 5、条件运算 6、属性优先级 3、thymeleaf使用 1、引入Starter 2、自动配置好了thymeleaf 3、页面开发 4、构建后台管理系统 1、项目…

Java基础03——数组

Java基础03——数组一、数组介绍二、数组的定义与静态初始化1. 定义数组2. 数组静态初始化三、数组元素访问1. 数组的地址值2. 数组访问四、数组遍历五、数组动态初始化六、数组常见问题1. 索引越界异常七、数组常见操作1. 求最值2. 求和3. 交换数据4. 打乱数据八、数组内存图九…

java企业人事管理系统企业工资考勤系统

简介 Java基于ssm开发的企业人事考勤工资系统&#xff0c;员工可以打卡、请假。系统根据员工的打卡情况自动计算工资&#xff08;全勤、请假、旷工、加班、迟到、早退等计算出最终实发工资&#xff09;&#xff0c;员工还可以查看自己的考勤记录工资具体组成等。升级版加了部长…

Linux——信号知识归纳(中)

目录 一.信号与硬件异常 二.阻塞信号和信号结构 &#xff08;一&#xff09;.信号状态 &#xff08;二&#xff09;.信号结构 ①pending表 ②block表 ③handler表 &#xff08;三&#xff09;.信号处理过程 &#xff08;四&#xff09;.阻塞与忽略的区别 &#xff08…

Linux 中断子系统(二):GIC 中断控制器

GIC 是 ARM 公司给 Cortex-A/R 内核提供的一个中断控制器,类似 Cortex-M 内核(STM32)中的 NVIC。 GIC:Generic Interrupt Controller,通用中断控制器 NVIC:Nested Vectored. Interrupt Controller,嵌套向量中断控制器目前 GIC 有 4 个版本:V1 ~ V4,V1 是最老的版本,已…

react源码解析20.总结第一章的面试题解答

总结 至此我们介绍了react的理念&#xff0c;如果解决cpu和io的瓶颈&#xff0c;关键是实现异步可中断的更新 我们介绍了react源码架构&#xff08;uifn(state)&#xff09;&#xff0c;从scheduler开始调度&#xff08;根据过期事件判断优先级&#xff09;&#xff0c;经过r…