python下selenium模拟浏览器基础操作
1.安装及下载
selenium安装: pip install selenium 即可自动安装selenium
geckodriver下载:https://github.com/mozilla/geckodriver/releases
Chromedriver下载:http://npm.taobao.org/mirrors/chromedriver/
2.保存路径
将下载好的geckodriver以及Chromedriver解压到桌面,打开我的电脑,找到Python文件夹中anancode文件,然后找到Scripts文件,并将刚才解压到桌面的geckodriver和chromedriver保存到此文件夹中即可。(D:\python\anancode\Scripts)
3.selenium在python中的应用:
selenium 可以完全模拟人对浏览器的操作,对动态数据进行获取。动态数据由代码生成,在页面初始化的过程当中是没有的,也无法进行获取,但是特意通过selenium来获取。同时,有些数据需要进行登录才能获取,比如:好友列表,消费记录等,需登录后获取cookie才能进行以上操作。但是使用selenium以后,可以避免人工登录,只需要得到账号、密码即可实现sele代替登陆。
4.selenium特点:
(1)由程序控制浏览器进行操作,而非人工操作;
(2)程序控制浏览器进行操作的时候,速度非常慢,所以需要谨慎使用selenium;
(3)使用selenium控制浏览器的时候,需要下载浏览器对应的驱动程序;
(4)selenium为开源、免费的,但是更新速度没有浏览器快。(不是selenium更新慢,而是浏览器更新速度快,但是要注意selenium和浏览器之间的对应关系。)
5.相关基础操作
(1)引入网页驱动
(2)selenium提供了找到元素的方法:find_element_by_xxx,这些方法全都是用python来实现的。如果只是想对某个元素进行查找、定位,建议使用xpath或者css_selecotor;如果需要对找到的内容进行点击等操作,建议使用find_element_by_xxx。下面介绍一些基础的查找操作:
以登录美食杰网页为例:
注意:
在进行selenium模拟浏览器操作时,会出现的报错信息:
报错原因:由于代码执行速度很快,但是浏览器响应很慢,代码执行到这里的时候,浏览器里面可能还没加载完,所以报错,找不到指定元素
---------------------
版权声明:本文为CSDN博主「想不到叫啥好」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42657103/article/details/81290446
python下selenium模拟浏览器基础操作的更多相关文章
- 【Python】 Selenium 模拟浏览器 寻路
selenium 最开始我碰到SE,是上学期期末,我们那个商务小组做田野调查时发的问卷的事情.当时在问卷星上发了个问卷,但是当时我对另外几个组员的做法颇有微词,又恰好开始学一些软件知识了,就想恶作剧( ...
- Python 配置 selenium 模拟浏览器环境,带下载链接
使用浏览器渲染引擎.直接用浏览器在显示网页时解析HTML,应用CSS样式并执行JavaScript的语句. 这方法在爬虫过程中会打开一个浏览器,加载该网页,自动操作浏览器浏览各个网页,顺便把数据抓下来 ...
- Python开发爬虫之动态网页抓取篇:爬取博客评论数据——通过Selenium模拟浏览器抓取
区别于上篇动态网页抓取,这里介绍另一种方法,即使用浏览器渲染引擎.直接用浏览器在显示网页时解析 HTML.应用 CSS 样式并执行 JavaScript 的语句. 这个方法在爬虫过程中会打开一个浏览器 ...
- Python使用mechanize模拟浏览器
Python使用mechanize模拟浏览器 之前我使用自带的urllib2模拟浏览器去进行訪问网页等操作,非常多站点都会出错误,还会返回乱码.之后使用了 mechanize模拟浏览器,这些情况都没出 ...
- Selenium模拟浏览器抓取淘宝美食信息
前言: 无意中在网上发现了静觅大神(崔老师),又无意中发现自己硬盘里有静觅大神录制的视频,于是乎看了其中一个,可以说是非常牛逼了,让我这个用urllib,requests用了那么久的小白,体会到sel ...
- Python对Selenium调用浏览器进行封装包括启用无头浏览器,及对应的浏览器配置文件
""" 获取浏览器 打开本地浏览器 打开远程浏览器 关闭浏览器 打开网址 最大化 最小化 标题 url 刷新 Python对Selenium封装浏览器调用 ------b ...
- 使用selenium模拟浏览器抓取淘宝信息
通过Selenium模拟浏览器抓取淘宝商品美食信息,并存储到MongoDB数据库中. from selenium import webdriver from selenium.common.excep ...
- selenium模拟浏览器对搜狗微信文章进行爬取
在上一篇博客中使用redis所维护的代理池抓取微信文章,开始运行良好,之后运行时总是会报501错误,我用浏览器打开网页又能正常打开,调试了好多次都还是会出错,既然这种方法出错,那就用selenium模 ...
- python爬虫:使用Selenium模拟浏览器行为
前几天有位微信读者问我一个爬虫的问题,就是在爬去百度贴吧首页的热门动态下面的图片的时候,爬取的图片总是爬取不完整,比首页看到的少.原因他也大概分析了下,就是后面的图片是动态加载的.他的问题就是这部分动 ...
随机推荐
- vue项目中微信jssdk在ios签名失败
一.问题描述 1. vue项目中微信jssdk签名时,在安卓和ios是有差异的,签名时使用的url=window.location.href.split('#')[0],此时在安卓没问题,在ios会导 ...
- 牛客 2B 树 (组合计数)
传送门 大意: 给定n节点树, 求划分为不超过$k$个连通块的方案数. n,k<=300. 核心观察是每个连通块深度最低的点固定以后染色方案就固定了. 所以答案为$\sum\limits_{i= ...
- server001
- Neo4j/Cypher: All paths between two nodes with a relationship property filter
解决方案一 I am trying to perform a query to retrieve all paths between two nodes a and b in which all th ...
- O018、理解 Keystone 核心概念
参考https://www.cnblogs.com/CloudMan6/p/5365474.html 作为OpenStack的基础支持服务,Keystone做了下面几件事情: 1.管理 ...
- monkey基础使用教程,如何安装和monkey分析日志
1.概念 什么是monkey,monkey的作用是什么? Monkey是Android自身提供的,可以通过adb shell模拟用户行为,发送一些伪随机用户事件到目标设备上. Monkey和它的直接意 ...
- RaspberryPi交叉编译环境配置-Ubuntu & wiringPi & Qt
1.配置RaspberryPi交叉编译环境: 在开发RaspberryPi Zero的过程中,由于Zero板卡的CPU的处理性能比较弱,因此其编译的性能比较弱,需要将代码在PC电脑上交叉编译完成之后再 ...
- 2019.9.25使用BP和Hydra爆破相关的服务
使用BP和Hydra爆破相关的服务. Hydra:九头蛇,开源的功能强大的爆破工具,支持的服务有很多,使用hydra爆破c/s架构的服务.使用bp爆破web登录端口. dvwa:web应用程序漏洞演练 ...
- init container
init container与应用容器在本质上是一样的, 但它们是仅运行一次就结束的任务, 并且必须在成功执行完成后, 系统才能继续执行下一个容器, 可以用在例如应用容器启动前做一些初始化工作,当in ...
- 自学Python5.7-面向对象三大基本特征_封装
自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...