selenium,webdriver模仿浏览器访问百度 基础2
学python理念 : 代码要多敲 一定要多敲 哪怕很基础 注释要清晰
由于基础1有一些注释写的很详细,
在这里有些注释没有写的很详细
可以配合基础1一起学习哦
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time,os
from lxml import etree # base_url = 'http://www.baidu.com/' #创建浏览器对象
driver = webdriver.PhantomJS()
#get方法 打开网页
driver.get('http://www.baidu.com/') #获取标题title
print(driver.title)#百度一下,你就知道 #获取页面中标签的内容
#创建文件夹
root_dir = 'bai_du'
if not os.path.exists(root_dir):
os.mkdir(root_dir) #截屏保存
file_name = root_dir + '/%s.png'%(driver.title)
driver.save_screenshot(file_name) #输入框
obj = driver.find_element_by_id('kw')
obj.send_keys('詹姆斯')
# time.sleep(4)
# driver.save_screenshot(file_name) button = driver.find_element_by_id('su')
button.click()
time.sleep(4)
driver.save_screenshot(file_name) #cookie 获取百度缓存的cookies 组成列表
cookies = driver.get_cookies()
for key in cookies:
print(key) #下面书有趣内容 获取按键 基本上每一个键盘上的按键都可以获取
#全选操作 相当于键盘同时按下control+a
obj.send_keys(Keys.CONTROL,'a')
driver.save_screenshot('bai_du/homepage_control_a.png') #剪切操作
obj.send_keys(Keys.CONTROL,'x')
driver.save_screenshot('bai_du/homepage_control_x.png') #粘贴操作 页面的输入框出现三个詹姆斯
obj.send_keys(Keys.CONTROL,'v')
obj.send_keys(Keys.CONTROL,'v')
obj.send_keys(Keys.CONTROL,'v')
driver.save_screenshot('bai_du/homepage_control_v.png') #获取当前的url
print(driver.current_url) #关闭页面
driver.close() #关闭浏览器
driver.quit()
selenium,webdriver模仿浏览器访问百度 基础2的更多相关文章
- selenium,webdriver模仿浏览器访问百度 基础1
这是一种比较好的反反爬技术 #安装:pip install selenium=2.48.0 #显示:pip show selenium #卸载:pip uninstall selenium #模拟用户 ...
- python selenium webdriver处理浏览器滚动条
用键盘右下角的UP,DOWN按键来处理页面滚动条 这种方法很灵活用起来很方便!!!! from selenium import webdriver import time from selenium. ...
- 用webdriver模仿浏览器 爬取豆瓣python书单
用webdriver模仿浏览器 爬取豆瓣python书单 其中运用到os 模块 作用是生成文件夹 存储爬取的信息 etree 用于xpath解析内容 详细代码如下 可用我的上一篇博客存取到excel当 ...
- selenium WebDriver 对浏览器标签页的切换
关于selenium WebDriver 对浏览器标签页的切换,现在的市面上最新的浏览器,当点击一个链接打开一个新的页面都是在浏览器中打开一个标签页,而selenium只能对窗口进行切换的方法,只能操 ...
- selenium webdriver(1)---浏览器操作
启动浏览器 如何启动浏览器已在上篇文章中说明,这里还是以chrome为例,firefox.IE启动方式相同. //启动浏览器 import org.openqa.selenium.WebDriver; ...
- Java环境下 selenium webDriver + chrome浏览器搭建与调试
一.首先下载selenium webDriver jar包,下载地址如下: http://selenium-release.storage.googleapis.com/index.html 二.下载 ...
- 基于Python, Selenium, Phantomjs无头浏览器访问页面
引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器,通过界面上输 ...
- 使用python selenium webdriver模拟浏览器
selenium是进行web自动化测试的一个工具,支持C,C++,Python,Java等语言,他能够实现模拟手工操作浏览器,进行自动化,通过webdriver驱动浏览器操作,我使用的是chrome浏 ...
- selenium webdriver处理浏览器Cookie
有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie 的测试是无法通过白盒和集成测试完成的.WebDriver 提供了操作Cookie 的相关方法可以读取.添加和删除cook ...
随机推荐
- web开发jsp页面遇到的一系列问题
一:web总结 1.jsp页面知识点巩固 1.1字符串数字格式化转换 <%@ taglib prefix="fmt" uri="http://java.sun.co ...
- windows server 2008R2 配置tomcat服务开机自启动
一.配置环境 操作系统:Windows server 2008 R2 软件包:jdk_1.7.rar 二.安装操作 1,右击解压jdk_1.7.rar:解压后双击运行jdk-7u79-windows- ...
- 微信小程序(8)--头部导航滑动
项目需求:实现头部导航,可左右滑动. <view class="top-news"> <view class="self-box"> & ...
- 八皇后问题 -- python面向对象解法
# [8*8棋盘八皇后问题] class Queen: def __init__(self, row, col): self.row = row self.col = col self.pos = ( ...
- 【抓包工具之Fiddler】增加IP列;session高亮
Fiddler 在处理每个session时,脚本文件CustomRules.js中的方法都会运行,该脚本使得你可以隐藏,标识或任意修改负责的session.规则脚本在运行状态下就可以修改并重新编译,不 ...
- 应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序
一开始是报缺少dll,随便在电脑里找个同名的dll放下面就报这个错误,网上查的都没有用.后来又找了一个dll,问题就解决了,所以是dll不对造成的.
- angular 组件通信
单页面应用组件通信有以下几种,这篇文章主要讲 Angular 通信 父组件 => 子组件 子组件 => 父组件 组件A = > 组件B 父组件 => 子组件 子组件 => ...
- 线程中的sleep()、join()、yield()方法有什么区别?
sleep().join().yield()有什么区别? sleep() sleep() 方法需要指定等待的时间,它可以让当前正在执行的线程在指定的时间内暂停执行,进入阻塞状态,该方法既可以让其他同优 ...
- django model的get和filter方法的区别
django的get方法: 1django的get方法是从数据库的取得一个匹配的结果,返回一个对象,如果记录不存在的话,它会报错. 2如果你用django的get去取得关联表的数据的话,而关键表的数据 ...
- mysql Got a packet bigger than 'max_allowed_packet' bytes
背景 数据库备份执行SQL文件时,执行到图片表插入图片数据时错误: 错误提示:Got a packet bigger than 'max_allowed_packet' bytes 原因分析及解决 m ...