分享106个JS表单脚本,总有一款适合您
106个JS表单脚本下载链接:https://pan.baidu.com/s/1Vabgg7OGCa1Vk4kch6Y3mA?pwd=okqt
提取码:okqt
Python采集代码下载链接:https://wwgn.lanzoul.com/iKGwb0kye3wj
jQuery评论框插入QQ表情代码
jQuery点击弹出登录窗口代码
jQuery支持删除重新选择表单代码
js表单文本框内容互换代码
jQuery步骤进度条样式代码
bootstrap后台登录表单代码
jQuery问卷调查选择题表单代码
js正则表达式表单验证代码
jQuery注册登录改密表单代码
jQuery实用的注册表单验证代码
jQuery仿京东注册表单验证代码
jQuery新浪微博用户评论表单代码
jQuery问卷调查表单编辑代码
表单checkbox多选框选择特效
vue.js表单密码强度验证代码
jQuery自定义单选按钮复选框代码
jQuery表单占位符动画插件
注册表单密码验证提示代码
jQuery超炫联系方式表单美化代码
import os import shutil import time from time import sleep from docx import Document from docx.shared import Inches from framework.base.BaseFrame import BaseFrame 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 title_name = "表单脚本" class ChinaZJsSelenium: base_url = "https://sc.chinaz.com/" # 采集的网址 save_path = "D:\\Freedom\\Sprider\\ChinaZ\\" sprider_count = 106 # 采集数量 sprider_start_count=100 word_content_list = [] folder_name = "" page_end_number=0 max_pager=20 #每页的数量 haved_sprider_count =0 # 已经采集的数量 page_count = 1 # 每个栏目开始业务content="text/html; charset=gb2312" filter_down_file=[] def __init__(self): pass def sprider(self,title_name): """ 采集 图片切换 https://sc.chinaz.com/tag_jiaoben/tupianqiehuan.html 返回顶部 https://sc.chinaz.com/tag_jiaoben/fanhuidingbu.html 动画效果 https://sc.chinaz.com/tag_jiaoben/donghuaxiaoguo.html 倒计时 https://sc.chinaz.com/tag_jiaoben/daojishi.html 弹出层 https://sc.chinaz.com/tag_jiaoben/danchuceng.html 在线客服 https://sc.chinaz.com/jiaoben/kefu.html 手风琴 https://sc.chinaz.com/tag_jiaoben/shoufengqin.html 表单脚本 https://sc.chinaz.com/tag_jiaoben/biaodan.html :return: """ if title_name == "图片切换": self.first_column_name = "tag_jiaoben" self.folder_name = "图片切换JS特效" self.second_column_name = "tupianqiehuan" elif title_name == "表单脚本": self.first_column_name = "tag_jiaoben" self.folder_name = "JS表单脚本" self.second_column_name = "biaodan" elif title_name == "返回顶部": self.folder_name = "JS返回顶部特效" self.second_column_name = "fanhuidingbu" elif title_name == "动画效果": self.first_column_name = "tag_jiaoben" self.folder_name = "JS特效动画效果" self.second_column_name = "donghuaxiaoguo" elif title_name == "倒计时": self.first_column_name = "tag_jiaoben" self.folder_name = "JS特效倒计时" self.second_column_name = "daojishi" elif title_name == "弹出层": self.first_column_name = "tag_jiaoben" self.folder_name = "JS特效弹出层" self.second_column_name = "danchuceng" elif title_name == "在线客服": self.first_column_name = "jiaoben" # 一级目录 self.folder_name = "JS特效在线客服" self.second_column_name = "kefu" elif title_name == "手风琴": self.first_column_name = "tag_jiaoben" self.folder_name = "JS特效手风琴" self.second_column_name = "shoufengqin" BaseFrame().right("本次采集参数:sprider_count=" + str(self.sprider_count) + "") BaseFrame().right("本次采集参数:title_name="+title_name+"") BaseFrame().right("本次采集参数:second_column_name=" + self.second_column_name + "") self.sprider_category = title_name # 一级目录self.folder_name second_folder_name = str(self.sprider_count) + "个" + self.folder_name #二级目录 self.sprider_type =second_folder_name self.merchant=int(self.sprider_start_count) //int(self.max_pager)+1 #起始页码用于效率采集 #原始路径+一级目录+二级目录 self.file_path = self.save_path + os.sep + "JS" + os.sep + self.folder_name + os.sep + second_folder_name self.save_path = self.save_path+ os.sep + "JS" + os.sep+self.folder_name +os.sep + second_folder_name+ os.sep + self.folder_name BaseFrame().debug("开始采集ChinaZJS"+self.folder_name+"源码...") sprider_url = (self.base_url + "/{1}/{0}.html".format(self.second_column_name,self.first_column_name)) down_path="D:\\Freedom\\Sprider\\ChinaZ\\JS\\"+self.folder_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 element_list = driver.find_elements(By.CLASS_NAME, "picblock") # 列表页面 核心内容 #element_list = div_elem.find_elements(By.CLASS_NAME, 'item') #print(element_list.get_attribute('innerHTML')) laster_pager_div = driver.find_element(By.CLASS_NAME, "fenye") laster_pager_a =laster_pager_div.find_elements(By.TAG_NAME, 'a') laster_pager_url = laster_pager_a[len(laster_pager_a) - 2] page_end_number = int(laster_pager_url.text) self.page_count=self.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.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/ #https://sc.chinaz.com/tag_jiaoben/tupianqiehuan_2.html next_url = self.base_url + "/tag_jiaoben/{0}_{1}.html".format(self.second_column_name, self.page_count) driver.get(next_url) element_list = driver.find_elements(By.CLASS_NAME, "picblock") # 列表页面 核心内容 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(1)
CSS3登录注册表单滑动切换特效
jQuery表单输入城市查询天气预报代码
CSS3单选按钮和复选按钮特效
jQuery表单设计器自由拖拽特效
jQuery手机端城市三级联动代码
jQuery随机选择音乐试题代码
html5关闭表单窗口裂开动画特效
CSS3用户登录框样式代码
jQuery表单浮动标签设计效果代码
jQuery手机端左右滑动切换表单代码
html5手机登录表单验证代码
jQuery录入商品信息表单代码
jQuery提交左右摇晃登录注册表单代码
jQuery站点后台登录表单代码
jQuery表单输入框浮动标签特效
JS带提示登录表单验证代码
HTML5手机身份证上传表单提交代码
原生js带提示留言表单验证代码
jQuery腾讯云诊断域名表单验证特效
jQuery微信手机端答题表单特效
jQuery动画登录注册表单切换代码
jQuery勾选购物车数量增加减少代码
CSS学生入学毕业档案表单样式代码
jQuery表单OA员工部门分组代码
jQuery自定义添加删除表单代码
jQuery表单元素动态增加删除代码
js问卷调查投票页面表单代码
jQuery可筛选下拉框美化插件
jQuery投资网站弹出框确认表单代码
Bootstrap扁平带浮动标签表单
jQuery电网分分步骤注册表单代码
表单Checkbox元素美化特效
jQuery星级评论表单美化代码
jQuery带步骤找回密码表单代码
jQuery单选框和复选框美化代码
jQuery按F5刷新随机标签云代码
jQuery Select下拉框美化插件
jQuery会员注册表单验证代码
html5用手机号码注册表单代码
html5表单注册进度条提示效果
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) #print("每页共"+str(element_length)) for element in element_list: div_list= element.find_elements(By.TAG_NAME, 'div') #print(len(div_list)) a_elenent=div_list[1].find_element(By.TAG_NAME, 'a') next_url = a_elenent.get_attribute("href") coder_title = a_elenent.get_attribute("alt") e=coder_title+"$"+ next_url element_array.append(e) pass if int(self.page_count) == int(self.merchant): 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") 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 = self.sprider_type 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 driver.get(next_url) # 请求明细页面1 sleep(0.5) if SeleniumTools.judeg_element_isexist(driver, "CLASS_NAME", "dian") == 3: driver.back() BaseFrame().debug(coder_title+"下载按钮不存在,因此跳过哦....") continue print("准备点击下载按钮...") div_element_list=driver.find_elements(By.CLASS_NAME, "dian") #下载源码.click() a_element=div_element_list[1].find_element(By.TAG_NAME, "a") a_element.click() sleep(0.5) result,message=SpriderTools.judge_file_exist(True,240,1,down_path,self.filter_down_file,"zipt|rar|gz|tgz")#判断源码 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().right("已经采集完成第" + str(self.haved_sprider_count) + "个") time.sleep(1) driver.back() coder_title = str(coder_title).replace("::", "").replace("/", "").strip() #去掉windows不识别的字符 files = os.listdir(down_path) file_name = files[0] # 获取默认值 srcFile = down_path + os.sep + file_name 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 shutil.move(srcFile, dstFile) # 移动文件 else: files = os.listdir(down_path) # 读取目录下所有文件 coder_title = str(coder_title).replace("/", "") # 去掉windows不识别的字符 try: if str(message)=="0个文件认定是False": BaseFrame().error(coder_title+"文件不存在...") shutil.rmtree(down_path) # 如果没下载完是无法删除的 pass else: BaseFrame().error("检测下载文件出错可能原因是等待时间不够已经超时,再等待60秒...") time.sleep(60) shutil.rmtree(down_path) #如果没下载完是无法删除的 #清空数组 self.filter_down_file.clear() except Exception as e: # 使用数组append记录文件名字 移动的时候过滤 self.builder_filter_file(files) pass except Exception as e: BaseFrame().error("sprider_detail()执行过程出现错误:" + str(e)) BaseFrame().error("sprider_detail()记录下载的文件名") # 使用数组append记录文件名字 移动的时候过滤 files = os.listdir(down_path) # 读取目录下所有文件 self.builder_filter_file(files) if(int(page_count)==int(max_page)): self.builder_word(self.folder_name,self.word_content_list) BaseFrame().debug("文件编写完毕,请到对应的磁盘查看word文件和下载文件!")
html5文件上传组件美化特效
jQuery带背景切换登录注册表单
js文本复制与剪切插件clipboard
jQuery复制表单元素代码
jQuery鼠标点击弹出登录框代码
html5文件上传输入框样式代码
js下拉选择配送城市列表代码
jQuery select下拉框美化插件
jQuery滑动解锁登录表单代码
Bootstrap复选框样式美化特效
jQuery+CSS3点击动画弹出表单代码
jQuery随着输入内容变化的表单代码
div css手机网站login表单特效
jQuery自动填充表单功能代码
jQuery手机登录注册表单代码
jquery女性月经安全期计算器代码
div+css银行提现手机表单代码
jQuery添加删除表单元素代码
jQuery仿魅族官网注册表单代码
import os def void_file(dirPath): dirs = os.listdir(dirPath) # 查找该层文件夹下所有的文件及文件夹,返回列表 for file in dirs: file_full_name = dirPath + '/' + file file_ext = os.path.splitext(file_full_name)[-1] if file_ext is None or file_ext=="": continue if "rar" == str(file_ext.split(".")[1]): os.remove(file_full_name) if "zipt" == str(file_ext.split(".")[1]): os.remove(file_full_name) if "gz" == str(file_ext.split(".")[1]): os.remove(file_full_name) if "tgz" == str(file_ext.split(".")[1]): os.remove(file_full_name) # 查找指定文件夹下所有相同名称的文件 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)
HTML5手机登录注册表单代码
带网上开户表单jQuery焦点图
jQuery仿去哪儿城市选择代码
jQuery会员中心安全修改表单代码
jQuery表单输入文字计数显示代码
jQuery实现用户评论留言代码
有趣的jquery搜索框插件zySearch
jQuery实现汉字转换成拼音代码
jQuery下拉友情链接美化代码
HTML5 SVG表单浮动标签特效
jquery表单获取短信验证码代码
jQuery商品分类选择提交表单代码
简洁实用的jQuery表单验证代码
jQuery下拉美化搜索表单样式代码
jQuery联动下拉框表单美化
jQuery表单元素美化插件jqtransform
jquery会员注册表单验证代码
jquery仿淘宝SKU选择商品属性代码
jquery简单的注册表单验证代码
jQuery用户注册表单验证代码
jquery+css3动画弹出表单提交代码
js select选中显示不同表单内容
jQuery文字选项问卷调查表单提交
Ctrl+Enter键按钮提交表单代码
jquery表单文本框添加文字标签
jquery带登录注册幻灯片代码
CSS3可自动输入登录表单动画
jQuery标签插件flyLabel
最后送大家一首诗:
山高路远坑深,
大军纵横驰奔,
谁敢横刀立马?
惟有点赞加关注大军。