selenium,webdriver模仿浏览器访问百度 基础1
这是一种比较好的反反爬技术
#安装:pip install selenium=2.48.0
#显示:pip show selenium
#卸载:pip uninstall selenium #模拟用户行为
from selenium import webdriver
import os
import time
from selenium import common #生成一个浏览器对象
driver = webdriver.PhantomJS() #访问
driver.get('http://www.baidu.com/') #创建文件夹存放数据
root_dir = 'baidu'
if not os.path.exists(root_dir):
os.mkdir(root_dir) #存储的文件夹及命名的文件名
file_name = root_dir + '/homepage.png'
#截屏并保存图片
driver.save_screenshot(file_name) #模拟用户行为操作
timeout = 4
count = 0
#输入行为
while True:
#只进行访问四次 访问不成功就终止
if count > 4:
break
try:
#通过id号找到百度的输入框
obj = driver.find_element_by_id('kw')
#在找到的输入框中 输入文字
obj.send_keys(u'章丘铁锅')
print(obj)
break
except common.exceptions.NoSuchElementException as e:
print(e)
#报错后 等待4秒 再次访问
time.sleep(timeout)
count += 1
#存储的文件夹及命名的文件名
file_name = root_dir + '/homepage_zhangqiutieguo.png'
#截屏并保存图片
driver.save_screenshot(file_name) #模拟鼠标点击操作
#通过id号找到点击按钮
su = driver.find_element_by_id('su')
#点击
su.click() #等到4秒 等页面加载完成
time.sleep(4)
#存储的文件夹及命名的文件名
file_name = root_dir + '/homepage_search.png'
#截屏并保存图片 运行后就可以看到 相当于在百度输入章丘铁锅后的页面 想想都很激动呢
driver.save_screenshot(file_name)
selenium,webdriver模仿浏览器访问百度 基础1的更多相关文章
- selenium,webdriver模仿浏览器访问百度 基础2
学python理念 : 代码要多敲 一定要多敲 哪怕很基础 注释要清晰 由于基础1有一些注释写的很详细, 在这里有些注释没有写的很详细 可以配合基础1一起学习哦 from selenium im ...
- 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 ...
随机推荐
- SpringCloud异常
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could ...
- U33405 纽约 (二分)
[题目描述] 牧民 Azone 需要多次往返于两个草场之间运输家当.为了顺利转场,Azone 决定花费 w元津巴布韦币,购买一辆载重为 w 的汽车.共有 n 件家具需要搬运,每件家具的重量为 wi ...
- php cookie session 深究一下
当一个用户用浏览器访问web(www.96net.com.cn)时候,若服务器开启session_start() 服务器tmp临时目录 自动生成session_id 并放回给创建一个cookie 保存 ...
- 如何为自己的网站添加HTTPS服务
如何为自己的网站添加HTTPS服务,针对单个域名而言的,下面介绍网站添加https方法,拿阿里云方法 1.准备证书文件 进入阿里云管理控制台-安全-证书服务点击购买证书服务,进入证书购买页面(放心,我 ...
- 如何优化MySQL千万级大表
很好的一篇博客,转载 如何优化MySQL千万级大表 原文链接::https://blog.csdn.net/yangjianrong1985/article/details/102675334 千万级 ...
- 转载一篇别人分享的VSFTPD.CONF的中文解释方便以后查询
# 服务器以standalong模式运行,这样可以进行下面的控制 listen=YES # 接受匿名用户 anonymous_enable=YES # 匿名用户login时不询问口令 no_anon_ ...
- vue,一路走来(5)--微信登录
微信登录 今天又是周末了,想着博客还没记录完成.是的,下面记录一下微信登录遇到的问题. 在我的项目中,个人中心是需要完成授权登录才可以访问的,首先在定义路由的时候就需要多添加一个自定义字段requir ...
- 常用jstl
求list中某一值的和 <c:set var="total" value="${0}" /> <c:forEach var="tLi ...
- 人生苦短_我用Python_def(函数)_004
# coding=utf-8 # function函数:内置函数 # 例如: len int extent list range str # print insert append pop rever ...
- uwsgi部署django项目
一.更新系统软件包 yum update -y 二.安装软件管理包及依赖 yum -y groupinstall "Development tools" yum install o ...