树莓派4B配置Selenium库+设置无图无头属性

2023-12-19 16:32

本文主要是介绍树莓派4B配置Selenium库+设置无图无头属性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写一个树莓派4B配置selenium库,并成功调用浏览器进行自动化爬虫
本文会手把手教你配置环境,并带你写第一个selenium爬虫程序

使用版本说明

系统:官网2020-02-13-raspbian-buster-full
Python:树莓派自带的3.7.3
以下所有的pip操作都会用到pip3命令

安装配置相关文件

1.使用pip3指令安装selenium库

  • 先换树莓派pip3的源,这样安装较快
    终端内依次输入
    sudo mkdir ~/.pip
    cd .pip
    sudo nano pip.conf
    再粘贴以下内容,之后按ctrl+o保存退出
[global]
timeout = 10
index-url =  http://mirrors.aliyun.com/pypi/simple/
extra-index-url= http://pypi.douban.com/simple/
[install]
trusted-host=mirrors.aliyun.compypi.douban.com
  • 安装selenium库
    终端内输入pip3 install selenium
    静等片刻后,安装成功在这里插入图片描述

2.安装Firefox浏览器

自带的Chromium浏览器网上没有找到支持的驱动,所有我们这里使用火狐

  • 终端中输入sudo apt-get install 安装火狐浏览器
    在这里插入图片描述
    安装成功以后,互联网的选项里会多一个火狐浏览器
  • 下载驱动
    网站:https://github.com/mozilla/geckodriver/releases/tag/v0.23.0
    一键下载链接
    这里要下载v0.23.0版本中的arm7hf文件,只能用0.23版本,高版本没有arm7了。
    注:我是使用电脑下载的,因此还需将下载好的驱动文件拷贝到树莓派中
    这里我使用filezilla,将文件拷贝到了/home/pi/Downloads目录下

3.安装驱动

  • 解压文件(如果已经是geckodriver文件,跳过这步)
    树莓派终端中,进入下载目录 cd /home/pi/Downloads
    解压文件 tar -zxvf geckodriver-v0.23.0-arm7hf.tar.gz在这里插入图片描述
  • 将文件移动到/usr/bin/目录
    sudo mv geckodriver /usr/bin/
  • 进入到/usr/bin/目录,赋予geckodriver文件权限
    cd /usr/bin/
    sudo chmod -R 777 geckodriver

4.测试安装结果

我们可以写一小段python代码来测试以下

from selenium import webdriver
url="https://www.baidu.com"
browser = webdriver.Firefox()
browser.get(url)
source = browser.page_source
print(source)

看看你的树莓派会不会自动打开火狐浏览器并输出网页源码
注:代码执行时,一定要用python3执行
在这里插入图片描述

设置无图无头属性

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

  • 设置无图无头完整代码
from selenium import webdriver
url="https://www.baidu.com"
option=webdriver.FirefoxOptions()						#读取配置文件
option.add_argument('--headless')						#设置无头属性
option.set_preference('permissions.default.image',2)	#设置无图属性
browser = webdriver.Firefox(options=option)				#加载配置文件,并调用浏览器
browser.get(url)
source = browser.page_source
print(source)

无论是无图还是无头模式,都要先读取一下配置文件

option=webdriver.FirefoxOptions()						#读取配置文件

设置完属性后,加载浏览器一定要加上设置属性

browser = webdriver.Firefox(options=option)				#加载配置文件,并调用浏览器
  • 如果不想设置无头模式,又想运行完之后自动关闭浏览器,在代码的最后添加一行,浏览器就会自动关闭
browser.quit(

这篇关于树莓派4B配置Selenium库+设置无图无头属性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/512904

相关文章

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过