因工作需要大量账号登陆进某网站做统一修改,故使用 selenium 模拟登陆操作.但是遇到一个问题: 如果我不用 headless,眼瞅着他干活,一切都没问题 但是如果我用了 headless 参数,那么我有个正则,就匹配不到.导致无法完成. 请教下,用了 headless 参数,获取的 browser.page_source 不一样吗? 请教各位,多谢!
1 p2pCoder 2018-02-08 10:20:40 +08:00 你应该做的是 对比下 page_source,看哪里不一样 |
2 Len1133 2018-02-08 10:47:29 +08:00 可能是 css 或 js 渲染没打开 |
![]() | 3 sparkssssssss OP 打印了 page_source,对比 i 了下,应该是 wait.until 的元素没定位对,所以,我要抓取的元素还没加载上,我就 re 去匹配了 |
![]() | 4 Nick2VIPUser 2018-02-08 12:55:31 +08:00 via iPhone 加延时试试~ |
![]() | 5 sparkssssssss OP 之前正常可能是网速问题? 我已经修改 wait.until 的元素为我要匹配的,已经正常,感谢各位 |
![]() | 6 WaterTr 2018-02-09 12:53:49 +08:00 其实我更好奇的是,为啥我 chromeheadless 死活不行,后来还是用 firefox 了。。。 |
![]() | 7 sparkssssssss OP @WaterTr 是不是 webdriver 和 chrome 的版本不匹配? 我用的 cent,虽然是基于 62 版本的,但是提示版本不对,专门下了个官方的 chrome 才可以. |