因一次对话,让我想做一个能自动打开网页,登陆的脚本…
因为本次操作并不是取数据,而是要用浏览器显示监控,故使用的工具为Selenium
环境配置
python安装教程请自行百度
安装Selenium
在命令行窗口输入
pip install selenium 或直接下载压缩包:
解压后,命令行进入目录输入
python setup.py build
python setup.py install
selenium默认使用firefox浏览器,所以若是想要用chrome或者ie浏览器,需要下载驱动
驱动版本对应浏览器,若下载的是32位的则会用32位ie,反之64位。
下载完后,将驱动放置浏览器目录下,并添加至环境变量
Path: ;浏览器目录
ps:若selenium版本为3.x,需要下载geckodriver,geckodriver是一款原生态第三方浏览器,3.x版本会用geckodriver来驱动firefox,下载地址 https://github.com/mozilla/geckodriver/releases
记得配置ie的保护模式
如果要用ie浏览器,需要配置ie的保护模式。ie选项-安全 将保护模式全部打勾或者都不打勾即可。
还要保证网页缩放率为100%。
以下是官网的一个例子
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox()
browser.get(‘http://www.yahoo.com’)
assert ‘Yahoo!’ in browser.title
elem = browser.find_element_by_name(‘p’) # Find the search box
elem.send_keys(‘seleniumhq’ + Keys.RETURN)
browser.quit()
这里是自动登录的demo
# 找到元素
UserName = browser.find_element_by_id(“loginUserName”)
# 模拟输入
UserName.send_keys(“账号”)
# 找到元素
PassWord = browser.find_element_by_id(“loginPassword”)
# 模拟输入
PassWord.send_keys(“密码”)
# 找到登陆按钮
Btn = browser.find_element_by_class_name(“loginbtn”)
# 模拟点击事件
Btn.click()
元素定位
通过id定位元素:find_element_by_id(“id_vaule”)
通过name定位元素:find_element_by_name(“name_vaule”)
通过tag_name定位元素:find_element_by_tag_name(“tag_name_vaule”)
通过class_name定位元素:find_element_by_class_name(“class_name”)
通过css定位元素:find_element_by_css_selector();
通过xpath定位元素:find_element_by_xpath(“xpath”)
通过link定位:find_element_by_link_text(“text_vaule”)或者find_element_by_partial_link_text()
转exe文件
python有个库叫pyinstaller,可以将py文件转换成exe文件,方便没有python环境的机器使用。
安装方式
pip install pyinstaller
使用方式 在所要转换文件的目录下
pyinstaller yourprogram.py
参数如下
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口
-p 表示自定义需要加载的类路径,一般用不到
-i 表示可执行文件的图标
更多可命令行输入 pyinstaller -h 查看
感谢阅读
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/38781.html