1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 分享116个PHP源码PHP源码 总有一款适合你

分享116个PHP源码PHP源码 总有一款适合你

时间:2022-10-12 15:00:48

相关推荐

分享116个PHP源码PHP源码 总有一款适合你

文件下载地址:分享116个PHP源码PHP源码,总有一款适合你

无忧淘宝客系统(集成jssdk)

亿百天教室预约系统 EbaitianCRS0308

24小时返利系统

整形美容医院信息管理系统

尘烟五笔字根编码查询系统

易学短网址系统

Cowtacular 库存管理系统

一流购物分享系统带数据(淘金点版)

汉潮B2B2C多用户商城系统

大湿手机直播系统

飞蛙B2C微分销商城系统 FeiWa WeiShop

kldns 快乐二级域名分发系统 2.1.1

PrestaShop 网上购物系统

贴心猫(IntimateCat) 通用网站系统 V3.9

LOGA 日志系统升级程序

文具企业网站系统

YAWIK 工作和求职管理系统

展览服务公司网站系统

RackTables 数据中心资产管理系统

标识公司网站系统

广告设计公司网站系统

盾灵批量友情链接管理系统

电动车制造企业网站系统

门窗工程部网站系统

商务宾馆酒店网站系统

食品购物商场网站系统

Co.MZ 企业系统

预订易地方酒店预订网站管理系统

ECTouch移动商城系统

微信集分享系统

微信网上订餐系统多用户版

DzzOffice网盘协作系统

TinyShop电子商务系统支付插件

群建站通用企业网站建设系统免费版

MYMPS蚂蚁分类信息系统

淘宝内部优惠券广告展示系统

阿旺wifi智能系统Free

优客365网站分类导航系统

PhotoFun-图趣超轻图片网站系统

HDWiki(互动百科)

响应式淘宝客系统

树洞外链

信呼协同办公系统

DM企业建站系统

飞蛙B2C微分销商城系统

恒友网络威客+商城系统(WK+shop)

贝云校园网站管理系统

silverstripe 内容管理系统

云EC电商系统

Carbon Forum 论坛系统

墨子博客系统

CoverPrise品牌官网系统(原NiuKou建站系统)

墨子题库系统

ShopBuilder网店系统

silverstripe Web内容管理系统

Jaws框架和内容管理系统

PHlyMail 邮件系统

xSite企业自助建站系统(本地安装版)

淘宝自动发货提货系统

ezContents 网站内容管理系统

盾灵新闻发布系统

WebsiteBaker 内容管理系统

pDownload 下载界面

glFusion内容管理系统

Zeroboard 建站系统

口福科技网上订餐系统

AK博客网站 个人博客网站系统

大上海淘宝购物系统

扎鸟搜索引擎蜘蛛爬行统计系统

WBlog博客管理系统

Kuwebs企业网站管理系统

Alog Ben 博客日志系统 UTF8

体育用品商城系统

ITool网站综合查询系统

TinyBlog 个人博客系统

网上在线挂号预约管理系统

67企业网站管理系统

安乐业房产系统

ET_deliver发货单查询系统

易得网站数据采集系统

阿西多用户日志系统

Mihalism多用户图片共享系统

ITool快递查询系统免费版

化工产品仓储管理系统

齐博视频系统

优拓免费wap建站系统 V1.5

齐博考试系统

3839小游戏

b2b系统Destoonb2b

网客库存管理系统|在线excel编辑|在线office

手机网址站系统WML版

爱淘宝淘宝客推广系统

ETsale简单产品销售管理系统

256啦网址导航系统完整114啦

claroline 在线学习和课程管理系统 多国语言含中文

康盛品牌空间网上展示系统

康盛品牌空间网上展示系统

Kuwebs 酷纬企业网站管理系统

moa image gallery 轻量级易于使用的个人画廊系统

MygosuClan 游戏内容管理系统 1.04

jCore 网站内容管理系统 0.9

Tine Web的群件系统 2.0 RC2

Demila数字内容交易系统

随风知道采集系统(联盟计划)

星光贴吧系统(原香菇贴吧系统)

友博CRM客户关系管理系统

发货统计微型ERP系统

嘉缘人才网站系统

暗月挂Q系统

公司内部销售管理系统

厦门公交查询系统

客客出品专业威客系统KPPW

领域医院网络信息管理系统

MySQL5.5 中文版

飞舞小说系统

莽荒纪积分签到系统

才子信息学生综合管理系统

import osimport shutilimport timefrom time import sleepimport requestsfrom bs4 import BeautifulSoupfrom docx import Documentfrom docx.shared import Inchesfrom framework.base.BaseFrame import BaseFramefrom sprider.business.DownLoad import DownLoadfrom sprider.business.SeleniumTools import SeleniumToolsfrom sprider.business.SpriderTools import SpriderToolsfrom selenium import webdriverfrom mon.by import Byfrom sprider.model.SpriderEntity import SpriderEntityfrom sprider.access.SpriderAccess import SpriderAccessclass HuaJunCode:page_count = 1 # 每个栏目开始业务content="text/html; charset=gb2312"base_url = "/" # 采集的网址save_path = "D:\\Sprider\\HuaJunCode\\"sprider_count = 118 # 采集数量sprider_start_count=140 # 从第几个序号开始 直接改数量即可 会做除法操作 正在采集第33页的第23个资源 debugmax_pager=25 #每页的数量haved_sprider_count =0 # 已经采集的数量word_content_list = []folder_name = ""page_end_number=0def __init__(self):passdef sprider(self,url_index=177):"""采集 /sort/177/:return:"""if url_index==177:self.folder_name="PHP源码"elif url_index==178:self.folder_name = "博客系统"elif url_index == 179:self.folder_name = "整站系统"elif url_index == 180:self.folder_name = "商务商城"elif url_index == 176:self.folder_name = "ASP源码"merchant=int(self.sprider_start_count) //int(self.max_pager)+1self.save_path = self.save_path + os.sep + self.folder_nameBaseFrame().debug("开始采集HuaJunCodePHP...")sprider_url=(self.base_url + "/sort/{0}/1/".format(url_index))down_path="D:\\Sprider\\HuaJunCode\\"+self.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)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)pager_content=driver.find_element(By.CLASS_NAME, "page").find_element(By.TAG_NAME, 'span').textpage_end_number = pager_content.replace("共", "").replace("页", "")#print(page_end_number)ul_elem =driver.find_element(By.ID, "soft_list") #列表页面 核心内容li_list=ul_elem.find_elements(By.TAG_NAME, 'li')self.page_count=merchantwhile self.page_count <= int(page_end_number): # 翻完停止try:if self.page_count == 1:self.sprider_detail(driver,li_list,self.page_count,page_end_number,down_path)passelse: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))#/sort/177/2/next_url = (self.base_url + "/sort/{0}/{1}/".format(url_index, self.page_count))driver.get(next_url)ul_elem = driver.find_element(By.ID, "soft_list") # 列表页面 核心内容li_list = ul_elem.find_elements(By.TAG_NAME, 'li')self.sprider_detail( driver, li_list, self.page_count, page_end_number, down_path)pass#print(self.page_count)self.page_count = self.page_count + 1 # 页码增加1except Exception as e:print("sprider()执行过程出现错误:" + str(e))sleep(1000000)#driver.quit()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 = 0element_array=[]element_length=len(element_list)for element in element_list:next_url = element.find_element(By.TAG_NAME, 'a').get_attribute("href")coder_title = element.find_element(By.TAG_NAME, 'img').get_attribute("title")e=coder_title+"$"+ next_urlelement_array.append(e)pass#print(element_array)# print(element_list[index].find_element(By.TAG_NAME, 'a').get_attribute("href"))#self.save_path = self.save_path + os.sep + self.folder_name# page_count * element_length#self.haved_sprider_count=self.sprider_start_count# sprider_start_countself.sprider_start_index = int(self.sprider_start_count) % int(self.max_pager)index=self.sprider_start_indexwhile index < element_length:# ul_elem = driver.find_element(By.ID, "soft_list") # 列表页面 核心内容# element_list = ul_elem.find_elements(By.TAG_NAME, 'li')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 + 1sprider_info="正在采集第"+str(page_count)+"页的第"+str(index)+"个资源"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_urlcodeEntity.create_datetime = SpriderTools.get_current_datetime()codeEntity.sprider_url = next_urlcodeEntity.sprider_pic_title = coder_titlecodeEntity.sprider_pic_index = str(index)codeEntity.sprider_pager_index = page_countcodeEntity.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 + "数据采集过因此跳过")continueif SeleniumTools.judeg_element_isexist(driver, "CLASS_NAME", "bendown") == 3:driver.back()BaseFrame().debug(coder_title+"不存在源码是soft因此跳过哦....")continueprint("准备点击下载按钮...")driver.find_element(By.CLASS_NAME, "bendown").click()result,message=SpriderTools.judge_file_exist(True,90,1,down_path,"zip|rar")if result is True:img_element =""if SeleniumTools.judeg_element_isexist(driver,"TAG_NAME","center")==3:if SeleniumTools.judeg_element_isexist(driver, "CLASS_NAME", "sortPic") == 3:passelse:img_element = driver.find_element(By.CLASS_NAME, "sortPic")img_element=img_element.find_element(By.TAG_NAME, "img")image_src = img_element.get_attribute("src")DownLoad(self.save_path).down_cover_image__(image_src, coder_title) # 资源的 封面else:img_element = driver.find_element(By.TAG_NAME, "center").find_element(By.TAG_NAME, "img")image_src = img_element.get_attribute("src")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 + 1BaseFrame().debug("已经采集完成第" + str(self.haved_sprider_count) + "个")time.sleep(1)driver.back()# 处理RAR文件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_extos.rename(srcFile,dstFile)# if "rar" in file_ext:#import rarfile#temp = rarfile.RarFile(dstFile) # 待解压文件#temp.extractall(down_path) # 解压指定文件路径# elif "zip" in file_ext:#passsrcFile=dstFiledstFile=self.save_path+os.sep+coder_title+file_extshutil.move(srcFile, dstFile) # 移动文件else:BaseFrame().error("检测下载文件出错可能原因是等待时间不够已经超时,再等待60秒...")time.sleep(60)shutil.rmtree(down_path)passexcept Exception as e:time.sleep(60)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)document = Document()document.add_heading("PHP"+word_title+"源码", level=2)document.add_paragraph("分享"+str(file_count)+"个"+word_title+"PHP源码,总有一款适合你\r\n""下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载后可以看到。")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:passdocument.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=save_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 osimport shutilsrc_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_doc_file_path = "readme.docx"dst_doc_file_path = target_path + os.sep + "readme.docx"shutil.copyfile(src_doc_file_path, dst_doc_file_path) # 移动文件passdef gen_passandtxt(self,file_count,word_title):print("Create PassWord and Pass.txt")message=SpriderTools.gen_password()password = "".join(message)content=""content = content + "\n分享"+str(file_count)+"个"+word_title+"PHP源码"content = content + "\n\r"content=content+"\n都到这里了您就支持一下呗!谢谢老铁~~"content=content+"\n\r"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.save_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(177)pass

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。