学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. jvm学习(3)方法区、堆、对象存储位置

    方法区 方法区,Method Area, 对于习惯在HotSpot虚拟机上开发和部署程序的开发者来说,很多人愿意把方法区称为“永久代”(Permanent Generation),本质上两者并不等价, ...

  2. python面试题之Python如何实现单例模式?

    #使用__metaclass__(元类)的高级python用法 class Singleton2(type): def __init__(cls, name, bases, dict): super( ...

  3. springboot的jar包部署

    由于springboot常用war包部署,改为cloud开发模式多端口情况下,部署反而不习惯 毕竟,war包要不要项目名访问都必须放在tomcat的root目录下 而此目录限制只能放置一个项目,并且登 ...

  4. 【问题解决方案】Linux中进入目录下文件夹

    win系统中直接 cd+空格+文件夹名 Linux下 cd+空格+./+文件名 其中句点表示"当前目录" 除非在根目录不加,或者把路径写全用绝对路径进入 Linux下切换路径的相关 ...

  5. Codecraft-17 and Codeforces Round #391 - C

    题目链接:http://codeforces.com/contest/757/problem/C 题意:给定n个gym和m个Pokemon的类型,然后给你每个gym内的Pokemon未进化之前的类型, ...

  6. 【LeetCode】队列 queue(共8题)

    [346]Moving Average from Data Stream [353]Design Snake Game [363]Max Sum of Rectangle No Larger Than ...

  7. MyEclipse使用过程中的问题及对应设置的总结

    1.关闭 Javaweb项目中的updating index : Window => Preferences => Myeclipse Enterprise Workbench => ...

  8. wnmp的配置

    第一部分:准备工作.(系统:Windows 8.1) 1.首先是下载软件. NGINX-1.3.8官网下载:http://nginx.org/en/download.html PHP5.4.8版本下载 ...

  9. 使用vue-i18n实现项目的国际化 以及iview的国际化

    一:项目的国际化 vue-i18n官网 1. 在src中新建一个language文件夹(包含index.js.US.js.CN.js) (1)US.js 保存变量的英文,内容: export defa ...

  10. manjaro linux java环境配置

    大佬博客 yaourt jdk 不管怎么装就是会出错 #报错信息 Error: dl failure on line 597 Error: failed /usr/lib/jvm/java-12-op ...