学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的更多相关文章

  1. selenium,webdriver模仿浏览器访问百度 基础1

    这是一种比较好的反反爬技术 #安装:pip install selenium=2.48.0 #显示:pip show selenium #卸载:pip uninstall selenium #模拟用户 ...

  2. python selenium webdriver处理浏览器滚动条

    用键盘右下角的UP,DOWN按键来处理页面滚动条 这种方法很灵活用起来很方便!!!! from selenium import webdriver import time from selenium. ...

  3. 用webdriver模仿浏览器 爬取豆瓣python书单

    用webdriver模仿浏览器 爬取豆瓣python书单 其中运用到os 模块 作用是生成文件夹 存储爬取的信息 etree 用于xpath解析内容 详细代码如下 可用我的上一篇博客存取到excel当 ...

  4. selenium WebDriver 对浏览器标签页的切换

    关于selenium WebDriver 对浏览器标签页的切换,现在的市面上最新的浏览器,当点击一个链接打开一个新的页面都是在浏览器中打开一个标签页,而selenium只能对窗口进行切换的方法,只能操 ...

  5. selenium webdriver(1)---浏览器操作

    启动浏览器 如何启动浏览器已在上篇文章中说明,这里还是以chrome为例,firefox.IE启动方式相同. //启动浏览器 import org.openqa.selenium.WebDriver; ...

  6. Java环境下 selenium webDriver + chrome浏览器搭建与调试

    一.首先下载selenium webDriver jar包,下载地址如下: http://selenium-release.storage.googleapis.com/index.html 二.下载 ...

  7. 基于Python, Selenium, Phantomjs无头浏览器访问页面

    引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器,通过界面上输 ...

  8. 使用python selenium webdriver模拟浏览器

    selenium是进行web自动化测试的一个工具,支持C,C++,Python,Java等语言,他能够实现模拟手工操作浏览器,进行自动化,通过webdriver驱动浏览器操作,我使用的是chrome浏 ...

  9. selenium webdriver处理浏览器Cookie

    有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie 的测试是无法通过白盒和集成测试完成的.WebDriver 提供了操作Cookie 的相关方法可以读取.添加和删除cook ...

随机推荐

  1. bzoj3218 a + b Problem(网络流+主席树)

    $ans=\sum_{color_i=black}\ b_i+\sum_{color_i=white}\ w_i-\sum_{i=abnormal}\ p_i$ 把它转化一下 $ans=\sum_{i ...

  2. axios 如何获取下载文件的进度条

    exportFun(){         let _that = this         const instance = this.axios.create({           onDownl ...

  3. vue 中使用 watch 出现了如下的报错

    vue 中使用 watch 出现了如下的报错 报错: Method "watch" has type "object" in the component def ...

  4. CSS-01 CSS代码标准和规范

    一:代码规范 1.所有的书写都是在英文半角下进行 2.统一用table键进行缩进 3.属性值必须带引号(单引和双引都可以) 4.p,dt,h标签里不能嵌套块属性标签 5.a标签不能嵌套a 二:文件命名 ...

  5. 使用 typeof bar === "object" 来确定 bar 是否是对象的潜在陷阱是什么?

    使用typeof首先要明白 typeof 可以检测什么. typeof 主要用于检测基本数据类型.typeof尽量不要用来检测复杂数据类型. typeof 检测null 和 数组 的时候 结果也是ob ...

  6. K8S创建的相关yaml文件

    一.K8S-yaml的使用及命令 YAML配置文件管理对象 对象管理: # 创建deployment资源 kubectl create -f nginx-deployment.yaml # 查看dep ...

  7. linux下的软链接与硬链接

    在 Linux 底下的连结档有两种,一种是类似 Windows 的快捷方式功能的文件,可以让你快速的链接到目标文件(或目录);这种链接称为软链接. 另一种则是透过文件系统的 inode 连结来产生新档 ...

  8. Synchronized和ReentranLock的比较

    并发编程最容易遇到的问题就是就是安全问题,因此解决方式有两种 使用同步方法或同步代码块(Synchronized关键字) 使用锁机制(ReentranLock) 同步方法和同步代码块(Synchron ...

  9. 百度MIP技术快速入门(上)

    前言 「本文假定读者已经有初级的前端开发知识,包括HTML.CSS.」 百度在一年前推出了称为 MIP(Mobile Instant Pages)的前端开发组件,主要目的是加速移动端网页的显示.MIP ...

  10. CF240E Road Repairs

    最小树形图+输出方案 输出方案的话记录一下哪些边 然后记得最后拆环要倒着拆就行了