浏览器操作(4)————Selenium&Phantomjs

1.Selenium

1.什么是selenium?
(1)Selenium是一个用于Web应用程序测试的工具。
(2)Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。
(3)支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动 真实浏览器完成测试。
(4)selenium也是支持无界面浏览器操作的。
2.如何安装selenium?
pip install selenium
3.selenium的使用步骤?
(1)导入:
from selenium import webdriver
(2)创建谷歌浏览器操作对象:
path = 谷歌浏览器驱动文件路径
browser = webdriver.Chrome(path)
(3)访问网址
url = 要访问的网址 browser.get(url)
记得下载的时候,一定要注意版本一致,只需要保证前三位数字是相同的即可。

#1导入selenium
from selenium import webdriver

#2创建浏览器操作对象
path = '/Users/Library/Mobile Documents/com~apple~CloudDocs/pythonProject1/python_crawler/chromedriver'

browser = webdriver.Chrome(path)

#3访问网站
url = 'https://www.jd.com/'
browser.get(url)

#page_source获取网页源码
content = browser.page_source
print(content)
查询周杰伦的信息
from selenium import webdriver
from selenium.webdriver.common.by import By
path = 'chromedriver'
browser = webdriver.Chrome(path)
url = 'http://www.baidu.com'
browser.get(url)

import time
time.sleep(2)
#获取文本框对象
input = browser.find_element(by=By.ID,value='kw')

#在文本框中输入周杰伦
input.send_keys('周杰伦')
time.sleep(2)

button = browser.find_element(by=By.ID,value='su')
button.click()
time.sleep(2)
#滑倒底部
js_button = 'document.documentElement.scrollTop=100000'
browser.execute_script(js_button)
time.sleep(2)

#获取下一页的按钮
next = browser.find_element(by=By.XPATH,value='//a[@class="n"]')

#点击下一页
next.click()
time.sleep(2)

#回到上一页
browser.back()
time.sleep(2)

#然后再回去
browser.forward()

time.sleep(3)
browser.quit()

4‐3:
交互
点击:click()
输入:send_keys()
后退操作:browser.back()
前进操作:browser.forword()
模拟JS滚动:

  • js=‘document.documentElement.scrollTop=100000’
  • browser.execute_script(js)

执行js代码 获取网页代码:page_source 退出:browser.quit()

2.Phantomjs

1.什么是Phantomjs?
(1)是一个无界面的浏览器
(2)支持页面元素查找,js的执行等
(3)由于不进行css和gui渲染,运行效率要比真实的浏览器要快很多
2.如何使用Phantomjs?
(1)获取PhantomJS.exe文件路径path
(2)browser = webdriver.PhantomJS(path)
(3)browser.get(url) 扩展:保存屏幕快照:browser.save_screenshot(‘baidu.png’)

from selenium import webdriver

path = '/Users/Library/Mobile Documents/com~apple~CloudDocs/pythonProject1/python_crawler/phantomjs'

browser = webdriver.PhantomJS(path)


url = 'https://www.baidu.com'
browser.get(url)

browser.save_screenshot('baidu.png')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值