ASP源码
分享116个ASP源码,总有一款适合您
116个ASP源码下载链接:https://pan.baidu.com/s/1LEs24-feWjvhac6vzyVecg?pwd=nosx
提取码:nosx
下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载后可以看到。
import os
import shutil
import time
from time import sleep
import requests
from bs4 import BeautifulSoup
from docx import Document
from docx.shared import Inches
from framework.base.BaseFrame import BaseFrame
from sprider.business.DownLoad import DownLoad
from sprider.business.SeleniumTools import SeleniumTools
from sprider.business.SpriderTools import SpriderTools
from selenium import webdriver
from selenium.webdriver.common.by import By
from sprider.model.SpriderEntity import SpriderEntity
from sprider.access.SpriderAccess import SpriderAccess
class HuaJunCode:
base_url = "https://down.chinaz.com" # 采集的网址
save_path = "D:\\Freedom\\Sprider\\ChinaZ\\"
sprider_count = 116 # 采集数量
sprider_start_count=226 # 从第几个序号开始 直接改数量即可 会做除法操作正 正在采集第32页的第16个资源 debug
word_content_list = []
folder_name = ""
page_end_number=0
max_pager=15 #每页的数量
haved_sprider_count =0 # 已经采集的数量
page_count = 1 # 每个栏目开始业务content="text/html; charset=gb2312"
def __init__(self):
pass
def sprider(self,title_name="NET"):
"""
采集
PHP https://down.chinaz.com/class/572_5_1.htm
NET https://down.chinaz.com/class/572_4_1.htm
ASP https://down.chinaz.com/class/572_3_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"
elif title_name == "ASP":
self.folder_name = "ASP源码"
self.second_column_name = "572_3"
first_column_name = title_name # 一级目录
second_folder_name = str(self.sprider_count) + "个" + self.folder_name #二级目录
merchant=int(self.sprider_start_count) //int(self.max_pager)+1 #起始页码用于效率采集
self.file_path = self.save_path + os.sep + "Code" + os.sep + first_column_name + os.sep + second_folder_name
self.save_path = self.save_path+ os.sep + "Code" + os.sep+first_column_name+os.sep + second_folder_name+ os.sep + self.folder_name
BaseFrame().debug("开始采集ChinaZCode"+self.folder_name+"...")
sprider_url = (self.base_url + "/class/{0}_1.htm".format(self.second_column_name))
down_path="D:\\Freedom\\Sprider\\ChinaZ\\Code\\"+first_column_name+"\\"+second_folder_name+"\\Temp\\"
if os.path.exists(down_path) is True:
shutil.rmtree(down_path)
if os.path.exists(down_path) is False:
os.makedirs(down_path)
if os.path.exists(self.save_path ) is True:
shutil.rmtree(self.save_path )
if os.path.exists(self.save_path ) is False:
os.makedirs(self.save_path )
chrome_options = webdriver.ChromeOptions()
diy_prefs ={'profile.default_content_settings.popups': 0,
'download.default_directory':'{0}'.format(down_path)}
# 添加路径到selenium配置中
chrome_options.add_experimental_option('prefs', diy_prefs)
chrome_options.add_argument('--headless') #隐藏浏览器
# 实例化chrome浏览器时,关联忽略证书错误
driver = webdriver.Chrome(options=chrome_options)
driver.set_window_size(1280, 800) # 分辨率 1280*800
# driver.get方法将定位在给定的URL的网页,get接受url可以是任何网址,此处以百度为例
driver.get(sprider_url)
# content = driver.page_source
# print(content)
div_elem = driver.find_element(By.CLASS_NAME, "main") # 列表页面 核心内容
element_list = div_elem.find_elements(By.CLASS_NAME, 'item')
laster_pager_ul = driver.find_element(By.CLASS_NAME, "el-pager")
laster_pager_li =laster_pager_ul.find_elements(By.CLASS_NAME, 'number')
laster_pager_url = laster_pager_li[len(laster_pager_li) - 1]
page_end_number = int(laster_pager_url.text)
self.page_count=merchant
while self.page_count <= int(page_end_number): # 翻完停止
try:
if self.page_count == 1:
self.sprider_detail(driver,element_list,self.page_count,page_end_number,down_path)
pass
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
#(self.base_url + "/sort/{0}/{1}/".format(url_index, self.page_count))
#http://soft.onlinedown.net/sort/177/2/
next_url = self.base_url + "/class/{0}_{1}.htm".format(self.second_column_name, self.page_count)
driver.get(next_url)
div_elem = driver.find_element(By.CLASS_NAME, "main") # 列表页面 核心内容
element_list = div_elem.find_elements(By.CLASS_NAME, 'item')
self.sprider_detail( driver, element_list, self.page_count, page_end_number, down_path)
pass
#print(self.page_count)
self.page_count = self.page_count + 1 # 页码增加1
except Exception as e:
print("sprider()执行过程出现错误:" + str(e))
sleep(10)
def sprider_detail(self, driver,element_list,page_count,max_page,down_path):
"""
采集明细页面
:param driver:
:param element_list:
:param page_count:
:param max_page:
:param down_path:
:return:
"""
index = 0
element_array=[]
element_length=len(element_list)
for element in element_list:
url_A_obj = element.find_element(By.CLASS_NAME, 'name-text')
next_url = url_A_obj.get_attribute("href")
coder_title = url_A_obj.get_attribute("title")
e=coder_title+"$"+ next_url
element_array.append(e)
pass
self.sprider_start_index = int(self.sprider_start_count) % int(self.max_pager)
index=self.sprider_start_index
while index < element_length:
if os.path.exists(down_path) is False:
os.makedirs(down_path)
if self.haved_sprider_count == self.sprider_count:
BaseFrame().debug("采集到达数量采集停止...")
break
#element = element_list[index]
element=element_array[index]
time.sleep(1)
index = index + 1
sprider_info="正在采集第"+str(page_count)+"页的第"+str(index)+"个资源,共"+str(max_page)+"页资源"
BaseFrame().debug(sprider_info)
next_url=element.split("$")[1]
coder_title=element.split("$")[0]
# next_url = element.find_element(By.TAG_NAME, 'a').get_attribute("href")
# coder_title =element.find_element(By.TAG_NAME, 'img').get_attribute("title")
driver.get(next_url) # 请求明细页面
try:
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 SeleniumTools.judeg_element_isexist(driver, "CLASS_NAME", "download-item") == 3:
driver.back()
BaseFrame().debug(coder_title+"不存在源码是soft因此跳过哦....")
continue
print("准备点击下载按钮...")
driver.find_element(By.CLASS_NAME, "download-item").click() #下载源码
result,message=SpriderTools.judge_file_exist(True,120,1,down_path,"zip|rar|gz")#判断源码
if result is True:
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) + "个")
time.sleep(1)
driver.back()
files = os.listdir(down_path)
srcFile = down_path + os.sep + files[0]
file_ext = os.path.splitext(srcFile)[-1]
dstFile = down_path + os.sep + coder_title + file_ext
os.rename(srcFile, dstFile)
srcFile = dstFile
dstFile = self.save_path + os.sep + coder_title + file_ext
dstFile=str(dstFile).replace("/","")
shutil.move(srcFile, dstFile) # 移动文件
else:
BaseFrame().error("检测下载文件出错可能原因是等待时间不够已经超时,再等待70秒...")
time.sleep(70)
shutil.rmtree(down_path) #如果没下载完是无法删除的
pass
except Exception as e:
#shutil.rmtree(down_path)
BaseFrame().error("sprider_detail()执行过程出现错误:" + str(e))
#driver.get(sprider_url)
#driver.quit()
if(int(page_count)==int(max_page)):
self.builder_word(self.folder_name,self.save_path,self.word_content_list)
BaseFrame().debug("文件编写完毕,请到对应的磁盘查看word文件和下载文件!")
def builder_word(self, word_title, save_path, list_files):
"""
输出产物是word文件
:param word_title: 文件的标题
:param save_path: 文件的保存路径
:param list_files: 文件集合(单个内容)
:return:
"""
try:
self.copy_file(self.save_path)
print("Create Word"+word_title)
file_count= len(list_files)
self.gen_passandtxt(file_count,word_title,list_files)
random_full_file_name = SpriderTools.get_word_image("asp",6)
document = Document()
document.add_heading(""+word_title+"", level=2)
document.add_paragraph("分享"+str(file_count)+"个"+word_title+",总有一款适合您\r\n"
"下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载后可以看到。")
document.add_picture(random_full_file_name, width=Inches(3))
ppt_tieles = ""
for files in list_files:
ppt_tieles = ppt_tieles + str(files[0]) + "\r"
document.add_paragraph(ppt_tieles)
# for files in list_files:
# try:
# document.add_paragraph(files[0])
# document.add_picture(files[1], width=Inches(3))
# except Exception as e:
# pass
document.add_paragraph("最后送大家一首诗:")
paragraph = document.add_paragraph() # 单独控制
paragraph.add_run("山高路远坑深,\r")
paragraph.add_run("大军纵横驰奔,\r")
paragraph.add_run("谁敢横刀立马?\r")
paragraph.add_run("惟有点赞加关注大军。\r")
paragraph.bold = True # 字体加粗
file_full_path=self.file_path+os.sep+word_title+".docx"
document.save(file_full_path)
except Exception as e:
print("Create Word Fail reason:" + str(e))
def copy_file(self,target_path):
print("copy files")
import os
import shutil
src_apk_file_path="薅羊毛专业版.apk"
dst_apk_file_path=target_path+os.sep+"薅羊毛专业版.apk"
#shutil.copyfile(src_apk_file_path, dst_apk_file_path) # 移动文件
src_pdf_file_path = "薅羊毛专业版.pdf"
dst_pdf_file_path = target_path + os.sep + "薅羊毛专业版.pdf"
#shutil.copyfile(src_pdf_file_path, dst_pdf_file_path) # 移动文件
src_pdf_file_path = "亚丁号.url"
dst_pdf_file_path = self.file_path + os.sep + "亚丁号.url"
shutil.copyfile(src_pdf_file_path, dst_pdf_file_path) # 移动文件
src_doc_file_path = "readme.docx"
dst_doc_file_path = self.file_path + os.sep + "readme.docx"
shutil.copyfile(src_doc_file_path, dst_doc_file_path) # 移动文件
pass
def gen_passandtxt(self,file_count,word_title, list_files):
print("Create PassWord and Pass.txt")
message=SpriderTools.gen_password()
password = "".join(message)
content=""
content = content + "\n分享"+str(file_count)+"个"+word_title+",总有一款适合您"
content = content + "\n\r"
content=content+"\n都到这里了您就支持一下呗!谢谢老铁~~"
content=content+"\n\r"
content = content + "\n\r"
content = content + "\n\r"
for files in list_files:
content = content+str(files[0])+ "\n"
content=content+"\n文件我就不一一列举了,送老铁一首打油诗"
content=content+"\n学习知识费力气,"
content=content+"\n收集整理更不易。"
content=content+"\n知识付费甚欢喜,"
content=content+"\n为咱码农谋福利。"
content=content+"\n\r"
content=content+"\n\r"
content=content+"\n感谢您的支持"
content=content+"\n\r"
content=content+"\n-------------------------------------------华丽分割线-------------------------------------------------------"
content=content+"\n友情提醒解压密码:"+password+""
full_path=self.file_path+os.sep+""+str(file_count)+"sell_pass.txt"
with open(full_path, 'a', encoding='utf-8') as f:
f.write(content)
if __name__ == "__main__":
HuaJunCode().sprider("ASP")
pass
仿安居客房产网站源码 v1.0
安信双轨直销系统(经典制度版) v4.1.0
佳贝政府网站管理系统 v1.0
生活分类信息网站电脑加手机版小程序 v2.0
乐器门户网 v2.0.1
双轨制直销软件手机版(带后台管理) v1.0
XYCMS装修设计公司源码系统 v3.2
zzzcms免费开源建站系统含手机 v1.5.6 Build20190428
企业在线记账管理系统 v6.09 build20190421
asp+excel图书在线检索系统 v201904
Ok3w系统电脑手机版 v4.0
网展购物系统 v6.4
海科智能企业建站系统黑色风格 v4.4
网络公司高端宽屏模板(含仿站神器) v1.0
啊估风栅设备订单管理系统 v2.1
高三中英繁企业网站系统高级版 v5.0
中国新华企业程序模板带手机版 v6.3
asp+Access通用考试查分系统 v2018
高三中英繁企业网站系统标准版 v5.0
企业网站系统电脑手机微信三合一 v4.0
淘宝互刷平台刷信誉源码 v10.0
单页亚运会奖牌榜html v1.0
千博装饰建材装修网站系统 v2018 Build0801
成绩查询系统 v4.6.0
工资条查询系统 v4.6.0
淘宝京东蘑菇街互刷单软件代码平台 v5.9
SemCms英文外贸网站 v4.6
IdeaCMS开源微商城 v2.1.3 UTF8
推广系统源码 v1.0
腾和装修建站系统 v5.4
天天企业网站管理系统简繁英三语版 v2.8 Build 20180128
中英文外贸网站带手机站双语微信三合一版 v2.0
传奇网站源码 v1.0
YidaCms 外贸英文企业建站系统(UTF8) v3.0 build20171102
易达(Wap)手机建站系统 v3.0 20171102
ZMCMS全功能多语言版 v8
查询工具大全整站源码 v1.0
嵩嵩问卷调查系统2017 v1.1
深山旅行社管理系统 v2.6.8
嵩嵩评选投票系统2017 v1.1
千博驾校培训网站系统 v2017 Build0623
亿景企业网站管理系统 v3.9
GBBS微论坛 v4.5
自由怪兽域名管理系统 v2.1.5.1
BingSNS多层级分销拓客社群 v2.1 ACCESS版
sweet博客系统 v4.1
HTMl5结婚微信电子请柬模板源码 v2.0 bulid0421
千博机械机床网站系统 v2017 Build0418
会员线上投资理财系统源码 v1.0.0
青辰协同办公管理平台 X3
BingSNS多层级分销拓客社群 v2.0 (微信端+纯静态PC端)
雨楠多配送员订购系统(含手机版) v2017.3.27
Memcached For Classic ASP v1.0.9.0
Fasp v1.1.0.9
右手米表程序 v1.0
天人文章管理系统打赏插件 v1.1
IdeaCMS开源网站管理系统 v6.3.7 UTF8
数据库表结构管理工具 v1.0
WTS工作跟进系统 v1.18
Asp+ajax家庭记帐本 v1.0
H5自适应DB科融证券官网源码 v1.0.0
办公家具类企业网站源码 v1.0.0
TSDQQ网址导航系统带后台带特制版 v2017.01.20
JRCMS企业网站管理系统 v4.01
瑞博网址导航源码 v1.0
白河子成绩查询系统 v4.0
易网会员管理系统 v2.0
中药养生产品古色古香系列网站源码 v1.0.0
plupload(php+ASP版) v2.1.9
阿赛无组件单文件上传系统 v9
New Cms博客系统 v1.0.161011
云交易晒单系统 v1.0
ASP伪静态大师 v1.0.1-P1
深圳社区信息门户网 v6.5
仿牛商营销型网站源码 v1.0.0
中英文响应式企业网站 v2.2
2016最新仿hao123带后台网址导航源码 v2016.10
防伪查询系统 v2.0
百度网址大全带后台 v1.1.1019
高仿admin5站长网址大全带后台 v1.1.1019
云升CRM客户管理系统 v3.6
宽屏大气网站源码 v2.1
楹栋DNSpod域名解析系统 v1.30
BetterCMS企业网站源码 v1.6
亮点搞笑图文 v6.1
深山留言板(有自适应手机版) v7.22
asp微信公众号接口调试工具 v1.2
AnyPIM个人信息管理系统 v6.2
精仿hao123网址导航系统 v20160927
千博企业网站管理系统开源版 v2016 Build0921
汉中小劣文章系统 v1.0
商道货源导航系统 v130930
CCG中券资本网站源码 v1.0.1
申江ASP留言本 v1.24c
网鱼网站广告管理系统 v1.3
触发式加载精美特效企业网站源码 v1.0.0
搜狗经典风格网址导航 v2.3
LOGO风格个性导航 v1.2
图标名站个性导航 v1.1
营销型企业网站源码响应式界面 v1.0.1
小清新风格网址导航 v2.2
163网易网址导航源码 v1.3
ico图标个性网址导航 v1.1
仿116单页个性型网址导航 v1.1
手机版网址导航(经典风格) v1.2
H5自适应企业网站源码 v1.0.1
2016里约奥运金牌奖牌榜小偷程序 v20160811
证券公司及集团公司网站源码 v1.0.0
WnyCms米表程序 v2.0
7384城市公交网查询系统源码 v5.0
老Y系统移动端(免费版) v1.0
速创学校网站源码 v1.0
云通付网站支付系统(ASP版) v1.0
ASPCMS开源企业网站管理系统 GBK v2.6.6(直接使用版)
佰牛网络企业网站管理系统 v3.0
创意几何色块html5网站 v2.0
116个ASP源码下载链接:https://pan.baidu.com/s/1LEs24-feWjvhac6vzyVecg?pwd=nosx
提取码:nosx
最后送大家一首诗:
山高路远坑深,
大军纵横驰奔,
谁敢横刀立马?
惟有点赞加关注大军。