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模拟浏览器行为
前几天有位微信读者问我一个爬虫的问题,就是在爬去百度贴吧首页的热门动态下面的图片的时候,爬取的图片总是爬取不完整,比首页看到的少.原因他也大概分析了下,就是后面的图片是动态加载的.他的问题就是这部分动 ...
随机推荐
- linux连接Windows系统之项目连接
在桥接模式下 在linux内需要设置 防火墙关闭 在Windows中连接 linux的ip连接 ***项目 在linux中命令行输入setup-->防火墙配置-->空格-->确定-- ...
- ITCAST-C# 委托
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _12委 ...
- Android Studio 配置Gradle总结
一, 问题:①换个新电脑安装完Android Sutdio第一次打开一个工程巨慢怎么办? ② 手动配置Gradle Home为什么总是无效? ③ 明明已经下载了Gradle,配置了gradle hom ...
- numpy:np.random.seed()
np.random.seed()函数可以保证生成的随机数具有可预测性. 可以使多次生成的随机数相同 1.如果使用相同的seed( )值,则每次生成的随即数都相同: 2.如果不设置这个值,则系统根据时间 ...
- 112、如何使用stack (Swarm19)
参考https://www.cnblogs.com/CloudMan6/p/8135714.html 定义好了 stack YAML 文件,就可以通过 docker stack deploy 命令 ...
- CentOS7 ab压力测试安装
①.ab(apache benchmark)安装 命令: yum -y install httpd-tools ②.ab测试的命令参数 命令: ab 或 ab -help 显示命令参数如下 ③.ab的 ...
- java笔记web
1,spring请求同,返回同一个界面 Dubbo消费者无法连接到生产者提供的服务?内网IP? https://blog.csdn.net/xlgen157387/article/details/52 ...
- vue typescript curd
用typescript 完成了一个页面 import { Component, Prop } from 'vue-property-decorator'; import Vue, { VNode } ...
- Linux系统文件系统及文件基础篇
学习Linux,重难点在于掌握不同类别的文件系统及其作用.通过对Linux系统的安装,我们首先来了解下Linux系统里各个目录文件夹下的大致功能:主要的目录树的有/./root./home./usr. ...
- 7款js文件上传插件
1. jQuery File Upload 具有多文件上传.拖拽.进度条和图像预览功能的文件上传插件,支持跨域.分块.暂停恢复和客户端图像缩放.可与任何服务端平台(如PHP.Python.Ruby ...