linux下安装 Chrome 和 chromedriver 以及 selenium webdriver 使用

1 安装 Chrome

sh 复制代码
yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

2 下载 chromedriver

sh 复制代码
# 进入下载目录
cd soft/crawler_tools

# 查看chrome 版本号
google-chrome --version

# 在chromedriver下载地址中找到对应版本,下载对应版本chromedriver
wget url
# 如:
wget https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/118.0.5993.70/linux64/chromedriver-linux64.zip

# 解压
unzip chromedriver-linux64.zip

# 赋权
cd chromedriver-linux64
chmod +x chromedriver

chromedriver 下载地址:

https://googlechromelabs.github.io/chrome-for-testing/ (推荐,包含最新稳定版)

https://chromedriver.storage.googleapis.com/index.html?

http://npm.taobao.org/mirrors/chromedriver/

https://registry.npmmirror.com/-/binary/chromedriver/

查看版本:

chromedriver对应下载地址

3 使用 selenium webdriver

现在就可以使用 selenium 的 webdriver 爬取内容了

python 复制代码
from selenium import webdriver

class SeleniumWebdriver:
    def __init__(self):
        self.chrome_options = webdriver.ChromeOptions()
        self.chrome_options.add_argument('--headless')
        self.chrome_options.add_argument(
            'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36')
        # chromedriver 地址
        self._CHROME_DRIVER_LINUX = '/soft/crawler_tools/chromedriver'
    # 浏览器模拟的方式获取含有专辑 mid 信息的页面
    def get_pagesource_by_chrome(self, url):
        browser = webdriver.Chrome(executable_path=self._CHROME_DRIVER_LINUX, options=self.chrome_options)
        browser.get(url)
        time.sleep(2)
        res = browser.page_source
        browser.close()
        return res
if __name__ == "__main__":
    sw= SeleniumWebdriver()
    url = "www.baidu.com"
    content = sw.get_pagesource_by_chrome(url)
    print(content)

参考:
傻瓜式linux下安装Chrome和chromedriver
chromedriver高于114版本的版本如115、116、117、118等,如何下载对应版本

相关推荐
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十六):mmap — 用户态“申请内存“的真相
linux·运维·服务器
欧米欧6 小时前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery6 小时前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
qetfw7 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
逆风的蚂蚁8 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器
沫璃染墨12 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
AI_Lab0114 小时前
宝塔用了两年,有没有必要换成轻量方案?
linux·运维·服务器
by2099914 小时前
Linux GDB 调试与 CGDB 使用
linux·运维·服务器·经验分享
星恒随风14 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip
feng_you_ying_li17 小时前
linux之网络层
linux·运维·网络