html 打开页面光标自动选中输入框_Python自动部署码云:
Python自动部署码云:
1:大概思路:
其实还是打开浏览器登录,只不过不用你自己再一步一步登录部署干啥。python代替你完成了这个过程。我用的谷歌浏览器,谷歌真香,用的人都说爽。
2:下载chromedriver.exe文件:
首先打开你的谷歌浏览器。直接在地址栏输入:chrome://settings/help.这样会出来和你浏览器相对应的版本。如下图所示:

我的浏览器版本是81.0.4044.9.我下载的版本只要是http://81.0.4044.xxx就可以。下载文件的链接是:http://chromedriver.storage.googleapis.com/index.html。 下载完文件后把这个exe文件当到谷歌浏览器的路径下:我的路径为:E:ChromeApplication。同时还要把这个文件放到你电脑上python的安装根目录下。
3:开始编写程序:
这里我们用到的是python的以下这些库:
from selenium import webdriver
from selenium.webdriver.common.alert import Alert
selenium是一个自动化测试工具,支持Firefox,Chrome等众多浏览器.
在爬虫中的应用主要是用来解决JS渲染的问题。
1.使用前需要安装这个第三方库,CMD下:
pip install selenium
安装完这个库就可以开始写代码了。
1:模拟浏览器来到码云的登录界面,代码如下:
# 模拟浏览器打开到gitee登录界面
driver = webdriver.Chrome()
driver.get('https://gitee.com/login')
# 将窗口最大化
driver.maximize_window()
time.sleep(2)
这时候我们打开这个界面后需要输入账号和密码登录。

这时候我们会有一个疑惑,如何定位输入账号的地方的和输入密码的地方,这时候我们需要一点html的知识。就是如何让python定位到账号和密码的输入框。这个时候我们就可以谷歌浏览器的开发者工具来分析:
html输入框坑定是放在一个div里的。而且通过Id号很方便,来确定的可以从id号去确认。~~我的html学的很垃圾。可能有些专业术语表达不清楚。~~
这里我们鼠标定位到输入框,右键,点击检查。

然后就会发现出现以下:

获得密码输入框的id也是和上面一样。我们得到了就可以用库里面的函数来定位到这个位置并且把你的账号和密码自动填入。代码如下:
# 输入账号--通过html的id属性定位输入位置--改为你的账号
user_login = driver.find_element_by_id('user_login')
user_login.send_keys("你的账号")
# 输入密码--通过html的id属性定位输入位置--改为你的密码
driver.find_element_by_id('user_password').send_keys("你的密码")
接下来就是写程序点击登录这个按钮。那么这个按钮的位置如何确定呢。我们这里是采用Xpath
来确定的。获取xpath也有一个快捷的方法。

依旧按上面的方法选中这一块,右键选择检查,定位到这一块的html代码。然后右键这一块。选择copy full xpath.
如下图所示:

得到了xpath
,接着写代码:
# 点击登录按钮--通过xpath确定点击位置
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[2]/div/form[1]/div[2]/div/div/div[4]/input').click()
time.sleep(2)
Python方便的地方就是有相应的库函数。这里也是。
登陆完后,我们需要来到部署静态网页的页面:一般情况下,这个页面的URL链接为:'https://gitee.com/xxxxx/xxxxx/pages'
这时候我们从登录后的界面跳转到以上的URL链接界面。之后写程序点击部署那个按钮。代码如下:
# 切换到gitee pages界面--改为you_gitee_id
driver.get('https://gitee.com/你项目的个人地址/项目名称/pages')
# 点击更新按钮--通过xpath确定点击位置
driver.find_element_by_xpath('/html/body/div[3]/div[2]/div/div[2]/div[1]/form/div[7]').click()
# 确认更新提示框--这个函数的作用是确认提示框
Alert(driver).accept()
之后等待部署,这里可以生成一个文件去记录你更新时间,代码如下;
# 等待5秒更新
time.sleep(5)# 这个print
print("成功")# 脚本运行成功,退出浏览器
driver.quit()fp = open("F:log.txt", "a+")
now_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
fp.write("auto update time:{0}n".format(now_time))
fp.close()
这样就完成想象中的自动部署把。当然氪金一年99块钱也是能自动推送后部署的,但是贫穷限制了我的想象力。只有出此下策。哈哈哈。
html 打开页面光标自动选中输入框_Python自动部署码云:相关推荐
- 当鼠标滑过文本框自动选中输入框内容JS代码
代码: <html> <head> <title>响应鼠标自动选中文本框内容</title> </head> <body> &l ...
- python手机端自动点赞软件_python自动点赞功能的实现思路
python自动点赞功能的实现思路 发布时间:2020-10-26 10:40:04 来源:脚本之家 阅读:92 1.思路 通过pyautogui可以实现鼠标点击.滚动鼠标.截屏等操作.由此功能实现打 ...
- python 自动登录网站_python自动登录网页脚本
import urllib import cookielib def renrenBrower(url,user,password): #登陆页面,可以通过抓包工具分析获得,如fiddler,wire ...
- html 打开页面光标自动选中输入框_初识selenium之web自动化
今天我们学习下如何使用python编写web自动化,谈到web自动化,那么我们需要了解下市面上做web自动化的几种方式,Robotframework工具,网红WebUI自动化测试神器 - Cypres ...
- python自动输入文字_Python自动输入【新手必学】
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:哈喽哈嘿哈 这篇文章是我的第一篇文章,写的不好的地方,请大家多多指教哈,另 ...
- python 在软件自己自动输入器_Python自动操作GUI神器PyAutoGUI
本文共3500余字,预计阅读时间12分钟,本文知乎连接:Python自动操作GUI神器PyAutoGUI,本文同步发布于silaoA的博客和微信公众号平台. 关注学习了解更多的Cygwin.Linux ...
- python自动轨迹绘制_Python——自动轨迹绘制
需求:根据脚本来绘制图形 不是写代码而是写数据来绘制轨迹 数据脚本是自动化最重要的第一步 基本思路: 步骤1:定义数据文件格式(接口) 步骤2:编写程序,根据文件接口解析参数绘制图形 步骤3:编制数据 ...
- python制作自动抢票_python自动抢票
# -*- coding: utf-8 -*- from splinter.browser import Browser from time import sleep import traceback ...
- python自动炒股软件下载_python自动股票交易软件
获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...
最新文章
- mysql中Table is read only 的解决方法小结
- 2018年DApp分析 | 链塔区块链产业年鉴精选
- 机器学习实战笔记(Python实现)-01-机器学习实战
- 软件工程个人作业(2)
- maven 打包时缺少文件_maven父子工程---子模块相互依赖打包时所遇到的问题:依赖的程序包找不到...
- 秒传 php,网站图片上传可以实现秒传功能吗?
- 域名解析 A记录 MX记录 CNAME记录 TTL
- 串行设备造成鼠标乱跑的问题
- 一个简单的鼠标钩子程序
- pandas 聚合 df.groupby.agg
- 自动化生产线仿真教学
- 如何移动桌面文件到计算机,怎么样把电脑桌面文件全部转移到指定文件夹
- 灵敏度分享码显示服务器不可用,和平精英S11最稳灵敏度分享码有哪些?和平精英灵敏度设置分享码...
- 数据库系统-存储过程
- 企业QQ找回聊天记录
- html怎么设置图片宽高比,CSS力图像调整尺寸和保持高宽比
- lad梯形图编程顺序_重新思考编程:再次使顺序图更酷
- HDMI设计5--GT Transceiver的总体架构整理
- 怎么会有两个“原本”
- linux开通本地ip连接,SSH 连接本地虚拟机 Linux
热门文章
- Java无所不能的反射在Android中需要熟练的知识
- 网页粒子背景插件 -Canvas-nest.js
- 博物馆奇妙夜java_博物馆奇妙夜 2 Night At The Museum
- mysql 分区 导出_mysql普通表变成分区表导入导出
- java -jar 怎么停止_图解Java日志体系
- 计算机实验室工作案例,2011年计算机学院实验室工作计划.
- 避免Unity变量初始化错误的8条建议
- (二)为AI时尚分类准备数据
- dotnet-cli命令小结
- 使用实体框架或C#中的任何IEnumerable列出批处理/分页