网站首页 > 开源技术 正文
helium是一款基于 Selenium 实现的网页自动化工具,他的 API 比 Selenium 更简介,当然也因为他是基于 Selenium 之上构建的,因此灵活性会比 Selenium 稍微差一些,不过如果对于一些简单的工作, helium 会更方便。
helium 安装
python-helium 是基于 Python3 的,因此需要在 Python3 的环境下安装,直接用pip安装:
pip install helium
代码梳理
代码仓库创建
这里由开发人员梳理出了新旧代码的代码仓库对照表new新旧仓库对照表.xls,需要基于 excel 表先新的gitlab地址下创建代码仓库:
from helium import start_chrome, write, press, ENTER, click, kill_browser, go_to, S
import time
import pandas as pd
# login in
def login():
write('xxxx', into='username')
write('xxxxx', into='password')
press(ENTER)
# 自动创建项目
def createProject(name, description, group):
go_to("https://xxxxxx.com/projects/new")
click("root")
write(group, into=S("#s2id_autogen1_search"))
click(group)
write(name, into="My awesome project")
write(description, into="描述格式")
click("内部")
click('新建项目')
if __name__ == "__main__":
driver = start_chrome('https://xxxxx.com/')
login()
data = pd.read_excel("new新旧仓库对照表.xls", encoding="gbk")
group_name = data["group"]
project_name = data["项目名称"]
description = data["描述"]
for i in range(len(data)):
if project_name.iloc[i] == "" or description.iloc[i] == "" or group_name.iloc[i] == "":
print("no data, and pass")
pass
else:
print("处理到:"+"-"*10,i)
createProject(project_name.iloc[i], description.iloc[i], group_name.iloc[i])
time.sleep(2)
kill_browser()
代码备份
对代码进行备份,将其压缩后上传到阿里云 oss 上:
import oss2
import os
import shutil
import pandas as pd
# 代码下载
data = pd.read_excel("newtable.xls")
old_projects = data["原git地址"]
new_projects = data["新git地址"]
group = data["group"]
for i in range(len(data)):
old_git = old_projects.iloc[i]
new_git = new_projects.iloc[i]
group_name = group.iloc[i]
project_name = old_git.split("/")[-1]
# 下载代码并压缩成 zip 压缩包
gitCloneCMD = "git clone --bare %s; tar -zcvf %s.zip %s --remove-files"%(old_git, project_name, project_name)
print(gitCloneCMD)
os.system(gitCloneCMD)
# OSS
auth = oss2.Auth('xxxxxxxx', 'xxxxxxx')
bucket = oss2.Bucket(auth, 'http://oss-accelerate.aliyuncs.com', 'xxxxxx')
# 将代码上传到oss进行备份
bucket.put_object_from_file('realihub/%s/%s.zip'%(group_name,project_name), '%s.zip'%project_name)
os.remove('%s.zip'%project_name)
print(group_name, project_name)
print("处理到:"+"-"*10, i)
print("finish!")
猜你喜欢
- 2024-10-15 基于阿里千问的agent项目--Qwen-agent介绍
- 2024-10-15 Python 标准库(10个常用python标准库)
- 2024-10-15 Qt 全流程实战企业级项目 - 云对象存储浏览器
- 2024-10-15 markdown学习(markdown教学)
- 2024-10-15 十次方专属社交平台前端系统开发 网站前台-吐槽与问答
- 2024-10-15 玩转阿里云EMR三部曲-高级篇 交互式查询及统一数据源
- 2024-10-15 web技术支持|Web 客户端实现录音、录像
- 2024-10-15 使用使用rclone挂载OneDrive到服务器
- 2024-10-15 「sabre/dav」只要十行代码让你的网站获得WebDav网盘能力
- 2024-10-15 利用Python渗透实现沙箱逃逸!看黑客是如何绕过网站的防护的?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)