V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yaleyu  ›  全部回复第 3 页 / 共 7 页
回复总数  130
1  2  3  4  5  6  7  
@Belmode 之前都是有头模式在跑,无图形界面的 Linux 下用 xvfb + pyvirtualdisplay 模拟图形界面也能跑,看到这里问无头模式能不能跑,试了一下,能跑,不过有几点注意事项:
1. ua 和实际打开浏览器的 ua 必须一致
2. macOS 下,有头无头都能跑
3. 无图形界面的 Linux - 有头:因为我跑的是有个打开页面后倒计时几秒才能点的按钮,在不用 xvfb + pyvirtualdisplay 的情况下,不能跑,就算显式等待一段时间也点不了那个按钮,用了 xvfb + pyvirtualdisplay 就没问题
4. 无图形界面的 Linux - 无头,我要跑的那个页面,就算是无头并不实际打开浏览器,也得用用 xvfb + pyvirtualdisplay 模拟界面,有点奇怪

from DrissionPage import WebPage, ChromiumOptions
co = ChromiumOptions()
co.set_headless(True)
# ua 和实际打开浏览器的 ua 必须一致,才能通过 Cloudflare, 因为浏览器升级,ua 不固定,先打开百度得到目前的 ua
page = WebPage(driver_or_options=co)
page.get("https://www.baidu.com")
ua = page.user_agent.replace("Headless", "")
page.quit()
co.set_user_agent(ua)
page = WebPage(driver_or_options=co)
page.get(你真正要跑的 URL)
@chen2016 嗯,主要是用这个绕开 CF 的人机检查,有的网站 Selenium 实在绕不过,用了 undected-chromdriver 都绕不过。
冷数据基本不会读写,矿盘就行,买来时候好的基本不会写一次就坏,不放心就两份
反爬技术日新月异,Selenium 越来越力不从心,试试 drissionpage, https://gitee.com/g1879/DrissionPage
@coolair 这是个好主意,不过有个问题,有多少人能弄清该填啥规则?
2023-08-11 11:24:17 +08:00
回复了 polobug 创建的主题 问与答 想去私教工作室锻炼,办几个月卡合适
私教领进门,后续还是自己练,如果你是喜欢那个环境,感觉好再续,要不然练的项目都固定了,去其他健身房练也一样,价格可是低多了。
@NonClockworkChen 115 开始,官方版本在这里 https://googlechromelabs.github.io/chrome-for-testing/last-known-good-versions-with-downloads.json ,手动下载和 Chrome 一致的版本,或者安装 pip install webdriver_manager 4.0 后可以通过下面脚本自动和 Chrome 版本保持一致

import os
import sys
from webdriver_manager.core.utils import read_version_from_cmd
from webdriver_manager.core.os_manager import PATTERN
from webdriver_manager.chrome import ChromeDriverManager


if sys.platform == 'linux':
chrome_path = '/usr/bin/google-chrome'
elif sys.platform == 'darwin':
chrome_path = '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'

ver = read_version_from_cmd(f'"{chrome_path}" --version', PATTERN['google-chrome']).split('.')[0]

if sys.platform == 'linux':
driver_path = f'{os.environ["HOME"]}/.wdm/drivers/chromedriver/linux64/{ver}/chromedriver-linux64/chromedriver'
elif sys.platform == 'darwin':
driver_path = f'{os.environ["HOME"]}/.wdm/drivers/chromedriver/mac64/{ver}/chromedriver-mac-x64/chromedriver'

if not os.path.exists(driver_path):
ChromeDriverManager(ver).install()
为啥不更新 chromedriver 呢?还不用保留两份不同版本的 Chrome
2023-08-04 22:10:59 +08:00
回复了 dreamwy1990 创建的主题 分享创造 准备做一个密码管理的 app,你们会用吗
不会,keepass 用得很好
现在导航 APP 是越来越牛逼了,都有提示保持当前车速的话,下个路口正好绿灯,关键下个路口还要转几个没红绿灯的弯
2023-07-28 09:58:03 +08:00
回复了 a707782628 创建的主题 路由器 [求助]软路由 PVE 直通网口给不同虚拟机会导致环路
我直通了一个口给 ikuai 做 WAN 口,其他口都作为 vmbr 连接交换机,也是用 openwrt 旁路由,ikuai 也是报环路,但是不影响上网,网速也没影响,就不管它了。
2023-07-23 21:08:28 +08:00
回复了 zhengshangjin 创建的主题 Apple [求助] MacOS 格式化西部数码 4T 机械盘为 APFS 耗时太久
外置硬盘 exFAT 就好啦
2023-07-12 18:29:24 +08:00
回复了 yaleyu 创建的主题 Python 求教:如何让 selenium 在 headless 环境处理有延时才能点击的按钮
@yaleyu 弄错了,再试了几次,无头还是不行,xvfb 加 pyvirtualdisplay 应该是我想要的解决方式。
2023-07-12 17:48:14 +08:00
回复了 yaleyu 创建的主题 Python 求教:如何让 selenium 在 headless 环境处理有延时才能点击的按钮
@girl1462235 哎,真的行,看来页面做了一定的反爬,有头时候是真正打开浏览器,无头时候被反爬了
2023-07-11 12:29:21 +08:00
回复了 yaleyu 创建的主题 Python 求教:如何让 selenium 在 headless 环境处理有延时才能点击的按钮
@wgit 嗯,这些都做了,现在的问题是在无头环境下不工作,有头环境下就一切正常。
2023-07-11 12:07:35 +08:00
回复了 yaleyu 创建的主题 Python 求教:如何让 selenium 在 headless 环境处理有延时才能点击的按钮
@jjplay 赞!所以说,selenium 的某些功能就不能无头?我以为是没用对
2023-06-10 09:55:48 +08:00
回复了 jiaweicco 创建的主题 MacBook Pro 2020 款 13 寸 macbook pro 不接电源总是自动关机(macOS 13.3.1)
2023-05-27 08:37:13 +08:00
回复了 tediorelee 创建的主题 NAS TrueNAS 迁移到 Unraid 的正确姿势?有必要底层套一个 PVE 吗
@StoneHuLu PVE 上跑 debian+snapraid+mergefs ,同爽飘过
2023-04-15 10:02:39 +08:00
回复了 hmxxx 创建的主题 Apple 23 年了大家 mac 上现在用啥收 gmail?
spark +1
2023-03-25 20:45:30 +08:00
回复了 jaredyam 创建的主题 MacBook Pro MacBook 官方换电池涨价至 2000,想换电池还有其他路子吗?
@calmWei 赞同,2014 款 MBP 老爷机前几天换了硬盘后莫名其妙出现了不插电源就断电,重置 SMC 和 NVRAM 后就好了,虽然还是提示电池建议维修,但其实能撑五六个小时。
1  2  3  4  5  6  7  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3820 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 41ms · UTC 05:06 · PVG 13:06 · LAX 21:06 · JFK 00:06
Developed with CodeLauncher
♥ Do have faith in what you're doing.