文档章节

selenium

bibier
 bibier
发布于 2017/07/16 14:44
字数 312
阅读 7
收藏 0

Centos,Python

PhantomJS是无界面的浏览器

selenium(python提供的库)是模拟人来对浏览器进行操作,比如打开浏览器,点击,输入,提交,都可以通过代码来实现

1.安装selenium

pip install selenium

2.要用selenium要有一个浏览器(Firefox)

3.浏览器Firefox的驱动文件,浏览器驱动下载地址,把驱动解压放到环境变量里(/usr/bin 或 /usr/local/bin)

4.安装虚拟的显示器

yum install Xvfb libXfont xorg-x11-fonts*
pip3 install  pyvirtualdisplay

运行下面代码会自动打开火狐浏览器,访问百度

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('http://baidu.com')

下面代码,模拟寻找网页元素,输入,模拟点击回车

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Firefox()
browser.get('http://www.python.org')
print browser.title
assert "Python" in browser.title    #assert断言,判断后面语句是否为真,异常
elem = browser.find_element_by_name("q")
elem.send_keys("pycon")
elem.send_keys(Keys.RETURN)
print browser.page_source

driver.get 方法会打开请求的URL,WebDriver 会等待页面完全加载完成之后才会返回,即程序会等待页面的所有内容加载完成,JS渲染完毕之后才继续往下执行。注意:如果这里用到了特别多的 Ajax 的话,程序可能不知道是否已经完全加载完毕。

© 著作权归作者所有

bibier
粉丝 0
博文 1
码字总数 312
作品 0
成都
私信 提问

暂无文章

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部