ASP源码
分享120个ASP源码,总有一款适合您
链接:https://pan.baidu.com/s/1WwTsUTLS_qLvP-TC1w-1vQ?pwd=vxpk
提取码:vxpk
下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载后可以看到。
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 = 136 # 采集数量
sprider_start_count=790# 从第几个序号开始 直接改数量即可 会做除法操作正 正在采集第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
阿里酷酷小说网小偷 v1.0
奇奇听书网(含数据和采集规则) v3.0
萧萧订单系统 v201301
安美奇收录查询系统 v2.0
Teamlab v6.5.42353
自动SEO(超强版) v1.1
网站文件在线管理系统(艾恩ASP无组件上传) v1.0
成语大全网站 SDCMS内核 v2.0
POPCMS中小企业智能建站系统 v1.11
SEO学堂整站源码 v1.0
企业网站在线超市 v131014
GOODTEXT.ORG留言本 v2.3
嵩嵩员工满意度调查测评系统 v1
艺帆CMS 餐饮类企业网站 v1.5
海纳个人博客系统 v1.5
春丽图片展示系统 v7.0
Net112blog 博客系统 v2.0
在线绘图源码 v1.0
九酷网络二级域名注册系统 v1.0
橙色短租房公寓源码 v1.0
电力公司企业网站(Zblog内核) v1.8
7384迷你广告信息发布系统 v3.0
月色怡人个人网站系统 v3.0
乐活网络产品发布系统(中英文版) v2012
乐活网络产品发布系统(英文版) v2012
高校社团门户网站 v1.0
511cha网址导航 v3.1
hao6cms企业网站 v2.0
齐齐单本小说小偷 v1.0
安徽某酿造厂网站 v1.0
环保包装公司整站源码 v1.0
今日星座运势查询 v1.0
自贡二手房房产系统 v1.0
大麦博客主题模板 v1.0
掌上DIY手机网站建站系统 v4.0 正式版
521yy歪歪海词在线查询 v2.0
fankuan8按揭担保公司系统 v1.1
fankuan8文章系统 v5.0
无忧CMS(5uCMS) v3.2012.0625 GBK
汇成装潢行业企业网站系统 vII2.4
love1度论坛 v7.2
中英双语电子科技公司整站源码 v1.0
FYCMS网站管理系统 v1.0 UTF-8
身高体重对照 v1.0 JS版
仿天猫商城系统 v1.0
在线邮件列表发送系统 v1.2
flash贺卡制作源程序 v1.0
DD38美图之家伪静态缓存开源版 v1.2
能源科技公司整站 v1.0
小鼻子文章管理系统 v2.1
启航机电设备企业建站CMS系统 v15.9
7384微招聘系统 v1.2
某机械公司整站 v1.0
蓝色网络科技公司系统 v1.1
深红色简洁企业站源码 v1.0
某互联网公司企业站源码 v1.0
钓鱼岛抗议墙 v1.0
经典蓝色通用型企业网站 v1.0
无忧个性网址导航 v2.2
绿色风格职业中专源码
Shopxp网上购物系统 v17.20
铁通无线固话号码销售站 v1.0
外语在线报名系统
自助友情链接程序整站源码 v1.0
兼职联盟源码
DJ培训学校程序源码 v3.0
中易招聘系统 v1.1
飞飞ASP影视系统(ADNCMS) v4.8 build 120927
绿色小说连载小偷 v1.00
联通400企业电话销售系统 v1.0
视频分享系统 v2.1
良精通用网站管理系统 v8.7
buyeju企业网站系统 v3.0
免费企业网站源码 2012.09.08
红色风格广告传媒公司网站源码
外国奶粉公司企业网站源码
旅客预定及联系资料查询系统 v1.0
中国大闸蟹产地直销联盟分销商城系统 v1.0
CGSAIL网站管理系统 v3.0
网络工作室源码 v3.2
开心网赚大全整站系统 v1.0
书法网站源码
明星个人网站程序
基于Extjs的开源控件库ExtAspNet中文版 v3.1.9
基于Extjs的开源控件库ExtAspNet英文版 v3.1.9
惠阳信息网社区门户版 v2.0
TV12345网络电视直播程序 v1.0
机票整站程序 v2.0
动天数据企业管理系统 v3.0 教育系列风格
老Y文章管理系统 修改版 v3.0 sp1
娱乐资讯门户网 v2.0 网钛内核
支付宝接口 v1.1
途途外贸企业网站管理系统 工作室版 v2.7.0
2012奥运奖牌榜小偷 v1.0
商达讯网店中英繁系统免费版 v9.0
BingSNS社交互动平台 v2.6 百度控 build20120620
手机39健康网wap小偷 v1.0
火锅派整站程序 v1.0
智能招聘人才管理系统 v1.5.6
追梦黑色经典flash相册 v4.0
经贸社区论坛
某肚皮舞培训机构源码
佳旅通旅游网站管理系统 v2.0
cmser企业建站系统 v2.0
动网论坛Dvbbs8.3简洁修改版 v3.0
书库小说小偷 v1.2
vfre殡仪馆网站管理系统 v1.0
WEB进销存管理系统wbjxc v3.0
草路网CMS v1.0 美化版
网站建设网络公司网站源码
摄影网站源码
网站建设公司网站完整源码 2012
名师讲座视频下载系统 v1.3.5
fankuan8-宾馆酒店行业网商务系统 v1206
KesionEshop v8.05 Build 20120619 GBK
KesionEshop v8.05 Build 20120619 UTF-8
KesionCMS v8.05 Build 20120619 GBK
KesionCMS v8.05 Build 20120619 UTF-8
奇艺视频小偷 v2012.6
免费友情链接交换平台源码 v20120527
盐城世纪学校网站源码 v1.0.0.0
精美淘宝客单页面 zblog模板 v1.0
马克斯max4.0自动采集插件 v4.0
fankuan8旅游服务行业网系统 v201206
雨楠旅游旅行社整站程序 v2.0
雨楠万能ASP采集程序 简易版 v0.1
雨楠CMS 中小企业网站管理系统 v2.0
兴复人才网管理系统免费版 v6.0
游戏通用发布站完整程序 v1.0
仿迅雷看看电影整站程序 v4.0
医药公司网站程序 v1.1
微营销文章网整站源码 v1.0
黑色风格企业网站系统 v1.0
美化版企业通用源码 v1.0
漂亮大气的网店商城源码 v1.2
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)
if __name__ == "__main__":
dirPath = 'D:\Freedom\Sprider\ChinaZ\Code\ASP\\136个ASP源码\ASP源码'
#dirPath = 'D:\\Freedom\\Sprider\\ChinaZ\\Code\\NET\\99个NET源码\\NET源码' D:\Freedom\Sprider\ChinaZ\Code\PHP\126个PHP源码\PHP源码
fileName4 = '服务器软件.url'
fileName3 = '脚本之家.url'
fileName2 = 'Readme-说明.htm'
fileName5 = 'jb51.net.txt'
fileName1 = '说明.htm'
search_file(dirPath, fileName1)
search_file(dirPath, fileName2)
search_file(dirPath, fileName3)
search_file(dirPath, fileName4)
search_file(dirPath, fileName5)
search_file(dirPath, "源码之家说明.txt")
search_file(dirPath, "服务器常用软件.html")
search_file(dirPath, "访问脚本之家.html")
最后送大家一首诗:
山高路远坑深,
大军纵横驰奔,
谁敢横刀立马?
惟有点赞加关注大军。