删除百度搜索结果的百家号结果
百度的搜索页面改版导致的,暂时用页面元素区分已经失效了。新版使用原始地址过滤的方式完成。
最新版也不能完全删除百家号内容了。。。现在百度很聪明,很多百家号链接都是https://www.baidu.com/link?url=这种跳转。。。导致域名拦截也不起作用了。。。
@EEEElio 说道: 最新版也不能完全删除百家号内容了。。。现在百度很聪明,很多百家号链接都是https://www.baidu.com/link?url=这种跳转。。。导致域名拦截也不起作用了。。。
之前是通过页面的百家号和其它结果的页面dom结构不一样,直接在页面进行移除。但是最新的百度改版之后,dom结构一致了,这种移除方式就失效了。
最新的其实不是不能移除,脚本的原理是通过ajax去访问了一次原本的地址。直接复制地址,在链接里面访问的时候,网络请求里有两次跳转,都是百度内部做的处理,一次是307,一次是302,最后才是真正的地址。在302返回里面有一段js代码,就是下一次跳转的最终地址。脚本就是截取这里面的地址,然后替换给目前页面的搜索结果的链接。如果发现本身就是百家号的结果,直接就移除了。
因为请求是油猴提供的接口里面的东西,是异步的promise,所以处理有一定的延时,因为必须要先去获取到302请求的结果才能进行处理,所以有时候不能移除也是请求还没有回来。更直接一点,就是对网络有一定要求。
怪不得。。。我海外,加载百度本来就比较慢
刚刚试了几次,貌似刷新页面就好了。。。是不是必须刷新一次页面才能生效,感觉我网速也不是很慢,等了半天没效果,刷新一下百家号就不见了。。。
@EEEElio 说道: 刚刚试了几次,貌似刷新页面就好了。。。是不是必须刷新一次页面才能生效,感觉我网速也不是很慢,等了半天没效果,刷新一下百家号就不见了。。。
timeout: 5000,
刚刚脚本更新了,还是得刷新一次页面以后才会生效。。。也不造是不是Safari的问题。。。
@EEEElio 说道: 刚刚脚本更新了,还是得刷新一次页面以后才会生效。。。也不造是不是Safari的问题。。。
我去掉了超时限制,之前是5秒超时就断掉请求,所以有不处理的情况
我怀疑是我浏览器不支持。。。依然要刷新页面才生效。。。也有可能是和广告屏蔽插件冲突。。。
百家号移除不干净
百家号新闻没有移除干净