我们知道网页重定向有3种方式
1.http重定向
2.mata tag重定向
3.js重定向
如果用http client,可以搞定1和2,但是对于3是无能为力的。
要做到js重定向必须依赖浏览器。但是selenium chromedriver并没有直接提供获取重定向链的功能,可以通过performance log来获取。不幸的是chrome最新版已经对应w3c,但是selenium chromedriver的安定版还没有对应。这个功能要4.0版才有,目前只有4.0alpha04的版本,因为很着急,暂时用这个版本,目前还没有发现问题。
取到了log后,该如何分析,网上没有找到资料,经过艰苦的分析,得到下面代码片段,与大家分享
这段代码可以分析重定向链的url,重定向原因,状态码
var redirectChain = new List<RedirectPage>();
var logs = driver.Manage().Logs.GetLog("performance"); //all your logs with redirects will be here
var redirectPage = new RedirectPage();
RedirectPage redirectPage=null;
string frameId = null;
string requestId = null;
foreach (LogEntry log in logs)
{
JObject msg = JObject.Parse(log.Message);
switch ((string)msg["message"]["method"])
{
case "Networ

本文介绍如何使用Selenium与ChromeDriver通过performance log分析网页重定向链,包括获取重定向URL、原因及状态码,适用于解决依赖JS重定向的问题。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



