Python爬虫配置Selenium库+设置无图无头属性

article/2025/7/21 0:38:18

出一个最新windows下配置selenium全环境的教程~
本文会手把手教你配置环境,并带你写第一个selenium爬虫程序

环境配置

1.安装Selenium库

Python和Anaconda-Python中并不包含Selenium包,这里我们要安装一下Selenium这个包
以下三种方式认选一种即可,推荐第三种

  • pip 安装
    win+r打开cmd窗口,手动输入pip install -U selenium
    注:并不推荐这种方法,速度会很慢,而且当你电脑同时有普通python和anaconda时,pip匹配的是python的哪个版本,初学者可能分不清楚
  • 网上下载+手动安装
    下载地址:https://pypi.org/project/selenium/
    下载红框选中的tar.gz文件,解压,win+r进入cmd,cd + 解压完文件的路径
    在这里插入图片描述在这里插入图片描述
    之后运行命令 python setup.py install
    在这里插入图片描述
    安装成功会有版本提示
    在这里插入图片描述
  • 使用PyCharm直接安装
    推荐这个方法,简单粗暴,直接省事
    直接打开PyCharm,进入到File-Setting-Project Interpreter,
    ps:如果你的环境是Anaconda集成环境,需要点击一下小眼睛标志上面的按键
    在这里插入图片描述
    在这里插入图片描述
    之后将这个窗口关掉,等待右下角进度条就行了~
  • 注:如果你是anaconda环境,记得关闭设置窗口前,将anaconda小圆圈点回去
  • 如果这种方法安装失败,请重新安装一下,多试几次就行了
  • 如果搜不到selenium包,请检查你的网络,查看anaconda小圆圈是否处于未点击状态

2.下载浏览器对应驱动

Chrome

  • http://chromedriver.storage.googleapis.com/index.html

Firefox

  • https://github.com/mozilla/geckodriver/releases

Edge

  • https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

Safari

  • https://webkit.org/blog/6900/webdriver-support-in-safari-10/

推荐win10使用chrome,Linux使用Firefox。这里演示Chrome的操作

  • 1.根据你Chrome的版本,到上面的链接下载对应版本的驱动
    在这里插入图片描述在这里插入图片描述
    下载完文件之后解压,得到chromedriver.exe文件
  • 将chromedriver.exe拷贝到python编译器所在的位置
    细节在图片文字上 在这里插入图片描述

运行测试,测试一下安装是否成功

打开PyCharm或其他Python编程软件,输入以下代码

from selenium import webdriver
url='https://www.baidu.com'
brower=webdriver.Chrome()
brower.get(url)
  • 运行程序,如果Chrome自动打开百度,恭喜你环境配置成功
    在这里插入图片描述

设置无图无头属性

selenium库主要用于自动化和爬虫,爬虫基本可以爬取一切网站,唯一的缺点就是只能等待网站加载完,selenium才能提取代码,对于无关内容很多网站,我们就可以设置无图属性
让浏览器不显示在前台,可以设置无头属性

  • 谷歌浏览器设置
from selenium import webdriver
url='https://www.baidu.com'
option = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}  #设置无图模式
option.add_experimental_option("prefs", prefs)                  #加载无图模式设置
option.add_argument("--headless")                               #设置无头模式
browser=webdriver.Chrome(options=option)                        #调用浏览器时,一定要加上设置
browser.get(url)
source=brower.page_source
print(source)
  • Firefox火狐浏览器设置
from selenium import webdriver
url='https://www.baidu.com'
option=webdriver.FirefoxOptions()
option.set_preference('permissions.default.image',2)    #设置无图模式
option.add_argument('--headless')                       #设置无头模式
browser = webdriver.Firefox(options=option)             #调用浏览器时,一定要加上设置
browser.get(url)
source=browser.page_source
print(source)
  • 如果不想设置无头模式,又想运行完之后自动关闭浏览器,在代码的最后添加一行,就会自动关闭
    browser.quit()

http://chatgpt.dhexx.cn/article/mGM9Cobq.shtml

相关文章

chrome如何进入无图模式?

chrom只显示文字不显示图片 隐私和安全-图片 可以设置所有网站都不显示图片 自定义指定网站不允许显示图片

locust入门 —— 无图模式和分布式执行

无图模式 无图模式即不通过UI界面进行执行locust测试用例。locust提供了命令参数,我们只需要在执行时添加一个--headless标签即可 “ Disable the web interface, and start the test immediately. Use -u and -t to control user count and run time ” 以下内容为…

PC端浏览器如何设置无图模式

以谷歌浏览器为例,注意有些浏览器并不支持该功能。 1)打开自定义与控制 2)选择设置 3)查看左边状态栏,选择高级设置--》隐私设置和安全性 4)选择内容设置 5)图片 6)选择不显示任何图…

火狐浏览器设置无图模式

步骤一 打开火狐浏览器,在地址栏输入about:config,然后回车 步骤二 在出来的页面中搜索:permissions.default.image 步骤三 把 permissions.default.image 设成 2 保存。 效果

万向锁的简单数学解释

我们知道用欧拉角表示空间的旋转,容易产生万向锁(Gimbal Lock)问题,这常常不太容易理解。下面给出一个直观的数学解释。 欧拉角表示的空间旋转,可以用绕三个坐标轴的旋转矩阵的乘积表示 万向锁问题就是出现在这种表示方法中。 假如我们令 β…

万向锁的理解

万向锁 万向锁这个概念其实还是不大好理解的,看了很多的博客,虽然看起来他们讲的很有道理,可还是想不通。 希望我这篇文章能讲清楚。。。 万向锁产生的根本原因是绕三个轴的旋转不是同时进行的,想象一下我们旋转矩阵的推导是不是…

万向锁问题详解,以Unity为例

转载自:https://blog.csdn.net/fengya1/article/details/50721768 根据上面的说明两个旋转面(圆圈)怎么会共面,让我迷糊。假设共面,那这两个旋转面的法线应该是旋转轴,要想两个面共面,那旋转轴肯…

UE4解决万向锁问题

万向锁 目录万向锁的来源Unity中最简单的万向锁UE4最简单万向锁解决方案四元数与欧拉角之间的转换参考链接 目录 万向锁的来源 简单而言,万向锁就是由于物体在进行旋转时(前提是通过欧拉角进行旋转),当旋转到某个特定角度会导致…

万向锁(Gimbal lock)问题的理解及解决

万向锁(Gimbal lock)问题的理解及解决 万向锁(Gimbal lock): 一旦选择90作为pitch角,就会导致第一次旋转和第三次旋转等价,整个旋转表示系统被限制在只能绕竖直轴旋转,丢失了一个表示维度。 对于万向锁的…

欧拉角表示旋转会出现的问题——万向锁(Gimbal Lock)

本文用来总结万向锁问题。尽量写得非常简单,方便自己复习和后人理解,水平有限若有错误请指教。 一、旋转的表示 本文中矩阵计算的结果是在世界坐标系(称之为North East Down Frame NED Frame)中的坐标; 参考文章中最后矩阵计算的…

旋转矩阵、欧拉角,万向锁的危害

1. 万向锁会带来什么危害? 最近看了很多万向锁的文章,大家都集中于讲述万向锁的成因,最后都会加上句“导致缺失一个方向的自由度”,但是万向锁现象到底会给实际工作带来什么问题?具体点,万向锁会给姿态解算…

资料分享:一文搞懂万向锁

大家好,我是被深圳台风吹飞的小鱼。台风老哥太暴躁,早上上班裤子都湿了 今天给大家分享一篇文章,主要讲的是欧拉角的万向锁现象,大家知道表示旋转的方式有很多,其中欧拉角就属于比较常见的一种方式,但是欧…

【SLAM学习笔记1】欧拉角之万向锁问题(Gimbal Lock)

文章目录 前言一、欧拉角1.欧拉角是什么?2.使用欧拉角的优缺点 二、万向锁问题的预备知识1.Gimbal(平衡架)2.相关术语 三、万向锁问题1.Gimbal Lock(万向锁问题)的现象2.Gimbal Lock(万向锁问题&#xff09…

[视觉SLAM十四讲]学习笔记2-关于欧拉角和万向锁

[视觉SLAM十四讲]学习笔记2-关于欧拉角和万向锁 1 欧拉角1.1 维基百科定义1.2 ZYX欧拉角与rpy角 2 万向锁2.1 万向节2.1 万向锁的产生 1 欧拉角 1.1 维基百科定义 关于欧拉角的定义,维基百科中这样给出:莱昂哈德欧拉提出用欧拉角来描述刚体在三维欧几里…

Unity 旋转欧拉角及万向锁问题

先说明unity 3D欧拉角的旋转顺序(父子关系)是y-x-z。即旋转y轴x和z轴都变,旋转x轴只有z轴变化,旋转z轴其它轴不变。 模型坐标系 又称物体坐标系。 与特定的物体关联,每个物体都有自己特定的坐标系。不同物体之间的坐…

万向锁的理解 欧拉角 四元数

1 欧拉角&万向锁 欧拉角和万向锁 视频资料理解万向锁 核心是嵌套 以一个三自由度的机械臂为例,三个旋转轴互相垂直,相当于x,y,z轴 三个机械臂通过旋转关节依次串联,定义第一个关节旋转轴为J1,以此类推第二第三个关节旋转轴为…

简单研究Unity中的万向锁和欧拉角以及四元数

欧拉角是欧拉在17世纪发明引进的一个数学工具,在三维欧几里得空间内,欧拉角可以确定一个物体的朝向。在解决静态问题上,欧拉角是一个比较完美的解决方案,但在动态问题上,欧拉角有一个万向锁的瑕疵,数学界在…

Unity万向锁

结论: 当第二轴旋转90时会产生万向锁,万向锁只发生在程序中,现实世界不会发生。 发生万向锁的底层原因是由于程序中会指定旋转顺序,且前后顺序为父子包含关系。 旋转顺序:因为同样一组数据,例如{X:10&…

欧拉角与万向锁—深度解读万向锁

文章目录 问题描述:Z轴不生效(轴向重合)轴向为什么会重合初态二次变换总结:解决办法: 相信很多人听说过欧拉角与万向锁,主要问题是欧拉角为什么会产生万向锁? 有矩阵解读法,但是不够…

关于万向锁(Gimbal lock)问题的理解及解决

有时间更新一下理解,现在回过头来看写的东西真是垃圾哈哈哈哈哈~~~~ 1. Gimbal lock的理解 万向锁(Gimbal lock): 一旦选择90作为pitch角,就会导致第一次旋转和第三次旋转等价,整个旋转表示系统被限制在只…