<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p>当爬取微信里的图片使用的时候会发现,当我们浏览器地址栏 访问微信中的图片URL是没有问题。但当我们在自己项目中使用标签引入的时候,就会出现,“此图片来自微信公众平台未经允许不可引用”的问题。这是因为微信为了防止其他平台引入,特意做了类似防盗链的功能。</p>
讯享网
前往原文地址查看效果:张苹果博客
网上找了几个解决方法。
一,在页面header中添加meta标签,设置referrer。
讯享网
该属性禁止了header发送页面相关信息,虽然可以阻止一些攻击以及绕过图片防盗链的效果。确实解决了这个问题。但是会出现其他问题如:影响页面跳转和回溯,第三方统计代码失效(如CNZZ、百度统计),SEO和社交媒体分享影响等。
二,img标签上添加 referrerpolicy=“no-referrer”
正常应该能解决,但我的项目第一次打开图片的时候没问题,但当我第二次访问的时候,不知道为什么又出现了“此图片来自xxxxx”的问题。
三,第三方代理
讯享网
需要自己去找一些第三方的代理,但是如果第三方地址挂了,那么就出问题了。所以这个方法可能不太稳定。

想了想,既然别人的可能不稳定,能不能自己写一个呢?后面自己用python简单实现了一下。
四,Python Flask代理服务器
通过Flask框架和requests库实现图片资源的获取和转发。该方法相对稳定(毕竟是自己弄的),但可能受到服务器性能和网络环境的影响。
1,完整代码
2,测试接口没问题

3,部署到服务器上使用。
讯享网


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/195778.html