liunx服务器使用selenium

这篇具有很好参考价值的文章主要介绍了liunx服务器使用selenium。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

最近在本地windows系统(下面简称本地)用selenium写了一个自动化爬虫,放到我liunx服务器(下面简称服务器)上面运行报错,记录处理流程


一、服务器下载google-chrome、chromedriver

一开始以为和本地一样,下好chrome浏览器和驱动就可以直接运行了(太天真了~)

1、下载chrome

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
sudo yum localinstall google-chrome-stable_current_x86_64.rpm

查看chrome版本安装对应版本chromedriver

google-chrome --version

liunx服务器使用selenium
我的版本是114.0.5735.133

2、下载chromedriver

去这里下载对应liunx版本安装包:https://registry.npmmirror.com/binary.html?path=chromedriver/

找不到一模一样的就找最相近的版本,也可以使用,比如我找不到114.0.5735.133,用的就是:114.0.5735.90/chromedriver_linux64.zip
下载到服务器上,解压使用

解压:
unzip chromedriver_linux64.zip

移动到执行目录:
mv chromedriver /usr/bin/chromedriver

给驱动执行权限,我懒直接给777:
cd /usr/bin/
chmod 777 chromedriver

到这我已经就好了,去执行脚本,各种报错,一查才发现,没有gui界面的liunx系统需要装模拟软件才可以!

二、安装Xvfb和python库pyvirtualdisplay、selenium

因为没有GUI,如果我们想使用Chrome/Firefox等浏览去,我们就需要Xvfb和python的pyvirtualdisplay库,给浏览器创造一个运行环境,这样浏览器就能顺利运行了。

1、安装Xvfb

下面来自万能的chatgpt,yyds!


在 CentOS 上安装 Xvfb(虚拟 X 服务器)可以通过以下步骤完成:

  1. 更新系统软件包:
sudo yum update
  1. 安装 Xvfb 和其他依赖包:
sudo yum install -y xorg-x11-server-Xvfb libXfont xorg-x11-fonts* xorg-x11-util*
  1. 配置 Xvfb 服务:
    创建一个 Xvfb 的 systemd service 文件,使其在系统启动时自动运行。

首先,使用编辑器(如 nano 或 vim)创建一个新的 service 文件:

sudo nano /etc/systemd/system/xvfb.service

然后,将以下内容粘贴到文件中:

[Unit]
Description=Xvfb Service
After=network.target

[Service]
ExecStart=/usr/bin/Xvfb :99 -screen 0 1024x768x24 -ac +extension GLX +render -noreset

[Install]
WantedBy=default.target

保存并关闭文件。

  1. 启动和配置 Xvfb 服务:
sudo systemctl daemon-reload
sudo systemctl enable xvfb.service
sudo systemctl start xvfb.service

现在,Xvfb 服务已经在 CentOS 上成功安装并启动了。您可以使用指定的显示号码(这里是 “:99”)来运行需要图形显示的应用程序,如 Selenium 等。

请注意,以上步骤假设您正在使用 CentOS 7 或更高版本。如果您使用的是旧版本的 CentOS,请根据实际情况进行适当调整。


配置完后测试一下,没有报错,牛的牛的~

2、安装python库pyvirtualdisplay

这个就很简单了,使用pip3,不要安装错了环境
之前没有安装selenium可以在这里顺便安装一下~

pip3 install pyvirtualdisplay
pip3 install selenium

三、配置好后测试

from pyvirtualdisplay import Display
from selenium import webdriver

#因为没有GUI,如果我们想使用Chrome/Firefox等浏览去,我们就需要Xvfb和python的pyvirtualdisplay库,给浏览器创造一个运行环境,这样浏览器就能顺利运行了。


display = Display(visible=0, size=(800, 600))
display.start()
print('123')
options = webdriver.ChromeOptions()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--headless')
options.add_argument('--disable-gpu')

browser = webdriver.Chrome(options=options)
browser.get('http://www.baidu.com')
print(browser.title)

browser.quit()
display.stop()

使用python3运行,如果打印出浏览器标题,表示成功了!
其他报错可以参考百度、chatgpt解决


总结

参考:
https://www.php1.cn/detail/Linux_ShangBuShu_54511b23.html
https://www.bing.com/?scope=web&cc=US文章来源地址https://www.toymoban.com/news/detail-510645.html

到了这里,关于liunx服务器使用selenium的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • xshell连接liunx服务器身份验证不能选择password

    使用密码通过Workbench或SSH方式(例如PuTTY、Xshell、SecureCRT等)远程登录ECS实例时,遇到 服务器禁用了密码登录方式错误. 该问题是由于SSH服务对应配置文件 /etc/ssh/sshd_config 中的参数 PasswordAuthentication 被设置为 no ,表示禁止以密码方式登录ECS实例,需要修改为 yes 。 您可以根据业

    2024年02月14日
    浏览(31)
  • Liunx两台服务器实现相互SSH免密登录

    服务器1:server        IPV4:192.168.110.136 服务器2:client         IPV4: 192.168.110.134 [root@server ~]# systemctl disable firewalld            #关闭防火墙 [root@server ~]# setenforce  0                                    #关闭seLiunx [root@server ~]# getenforce Permissive [root@clien

    2024年02月07日
    浏览(43)
  • 【Liunx常用操作】配置sftp服务器(用户独立目录&用户共享目录)

    提示:为保证文章的正确性和实用性,文章内容可能会不定时优化改进,若您有建议或者文章存在错误请私信留言或评论指正💖😊💖。下面以Ubuntu22.04操作系统为例,介绍具体的操作步骤,如果本文对你有帮助,记得关注加收藏🤞。 本文以Ubuntu22.04系统为例,介绍如何在

    2024年02月04日
    浏览(56)
  • windows通过ssh连接Liunx服务器并实现上传下载文件

    目录 连接ssh 操作方式 下载上传文件 特别提醒 操作方式 示例 前言-与正文无关         生活远不止眼前的苦劳与奔波,它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界中,我们往往容易陷入工作的漩涡,忘记了停下脚步,感受周围的世界。让我们一

    2024年02月02日
    浏览(99)
  • 开黑啦kook 机器人开发 PHP swoole Liunx 服务器(宝塔)

    安装环境 PHP 拓展 直接使用 宝塔一键安装 (Windows系统不支持) 设置命令行的PHP版本避免执行脚本时 获取不到 swoole 检查swoole是否安装成功 获取官方SDK  GitHub - kaiheila/php-bot: 开黑啦机器人的php版本 https://github.com/kaiheila/php-bot  配置参数 机器人链接模式选择 webhook 密钥 自己设

    2024年02月11日
    浏览(54)
  • Selenium技术在CentOS6.8系统的腾讯云服务器上的docker镜像的Ubuntu容器里的相关使用(Linux环境下)

    一开始看标题,我知道你们会很懵,我当初完成的时候,我自己也很懵,主要是想在Linux环境下使用Selenium技术来完成一些工作,本来打算用docker创建一个Anaconda的容器来用Selenium技术的,但发现无法通过chrome驱动来驱动谷歌浏览器,所以我又用docker创建了一个Ubuntu容器来使用

    2024年02月03日
    浏览(103)
  • linux服务器搭建python+selenium+chrome运行环境

    第一步(安装python3.6.8): 安装参考步骤:python3.6.8环境安装 第二步(安装和创建python3虚拟环境): 第三步(在虚拟环境安装依赖包): 第四步(安装chrome和chromedriver): 第五步(安装scrapyd环境): 第六步(安装虚拟图像环境Xvfb): 运行实例代码测试: ps:当前依赖:requirements.txt 百度网盘:链

    2024年02月07日
    浏览(48)
  • 关于python+selenium+requests在服务器端开发多线程并发程序踩过的一些坑

    最近因为一个需求,着手开发一款使用selenium+requests进行多线程的测试工具,当然还是基于相对熟悉的python来开发。由于很久没写了,就有很多道理我都懂,一试就出错的问题,前前后后折腾了几天总算是开发完了,这里就把期间遇到的问题做一个记录,希望可以帮助到有同

    2024年02月09日
    浏览(45)
  • 华为云云耀云服务器L实例评测|Python Selenium加Chrome Driver构建UI自动化测试实践

    🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验, AWS/阿里云资深使用用户 ,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论⭐收藏 随着云计算时代

    2024年02月08日
    浏览(57)
  • 使用Python搭建代理服务器- 爬虫代理服务器详细指南

    搭建一个Python爬虫代理服务器可以让你更方便地管理和使用代理IP。下面是一个详细的教程来帮助你搭建一个简单的Python爬虫代理服务器: 1. 首先,确保你已经安装了Python。你可以在官方网站(https://www.python.org/)下载并安装最新版本的Python。 2. 安装所需的Python库。打开终端或

    2024年02月15日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包