一个乐于分享的博客
关注互联网折腾服务器分享码农的日常

[原创]新浪微博图床批量上传-缩放-加水印-生成链接一键搞定

[原创]新浪微博图床批量上传-缩放-加水印-生成链接一键搞定

之前介绍过无比坚挺无比迅速的图床 微博图床,本博客也一直在用。

但是使用过程中发现一些问题,比如要上传一张图,步骤是“截图-调整大小-加水印-通过插件上传-获取链接”,可以说步骤相当繁琐,做为懒人坚决不能忍,所以就想做一套集裁图,加水印,上传微博一键完成的图床应用。

演示地址

https://yantuz.cn/weiboUploader-Watermark/

以上地址仅供演示,长期使用建议自己搭建服务器。上传的所有图片将在我的服务器上留备份

实现效果

[原创]新浪微博图床批量上传-缩放-加水印-生成链接一键搞定

使用说明

使用过程很简单,选择图片上传即可,系统会自动上传新浪微博,并返回链接。如需加水印和调整大小,下方的选项也是即时生效的。

如上传第一张图无需水印,正常上传之后再勾选水印,上传第二图即可自动按设置添加水印。

选项说明

启用水印:水印设置的总开关,开启时下方设置才会生效

水印图:由于我只需要添加图片水印,所以只做了图片水印,图片水印需要提供一个图片URL,最好是PNG格式,加水印会比较美观

水印位置:把图片按9宫格排列,提供了9个位置的水印,默认右下。

透明度:水印透明度,默认50%,这个自己调整,如果遇到深色背景的图片,可以加深透明度

图像缩放:填写宽度时,图像总宽度不会超过设置值,默认800px。高同理,建议只设置宽度即可

项目开源

GitHub:yhf7952/weiboUploader-Watermark

部署说明

系统用PHP语言编写,可以运行在任何Linux主机上。

环境要求

  • PHP >= 7.0
  • json 扩展
  • openssl 扩展
  • fileinfo扩展
  • allow_url_fopen

upload文件夹为图片备份目录,需设置777权限

vendor/consatan/weibo_image_uploader/cache/为微博cookie存放目录,需777权限

参考

H5上传页:http://fex.baidu.com/webuploader/

图像处理:http://image.intervention.io/

上传微博:https://github.com/consatan/weibo_image_uploader

已知问题

新浪对新IP地址登录的用户进行了验证码验证,而自动登录脚本并不支持验证码输入。微博图床原作者给出的解决方法目前测试是失效的。稳妥的方法是

  1. 用服务器IP登录微博,让服务器IP也成为可信IP
  2. 在本地部署程序,生成的cookie文件(vendor/consatan/weibo_image_uploader/cache/)上传至服务器,有效期只有1天。

转载务必注明出处:岩兔站 » [原创]新浪微博图床批量上传-缩放-加水印-生成链接一键搞定
赞 (4) or 打赏

讨论区 27

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #11

    问一下博主,请问上传的图片有没有办法删除啊?

  2. #10

    大佬厉害,路过贵站

  3. #9

    用的宝塔面板,上传图片后链接就显示[object Object]

    anky3个月前 (09-08)回复
    • 跟面板应该无关,显示object就是没获取到返回的图片地址,多半是出验证码了,无法上传成功

      岩兔站3个月前 (09-17)回复
  4. #8

    大佬,请教一下,如果要修改生成的链接为带a herf 和src标签的链接,应该修改哪里?

    shijiu4个月前 (08-11)回复
    • upload.js里当图片上传成功时路径回显,大概175行的位置,会往页面中插入图片路径,按需要修改即可。

      岩兔站4个月前 (08-12)回复
  5. #7

    大佬,请教一下,如果要修改生成的链接为这样的:

    要改哪里文件?

    shijiu4个月前 (08-11)回复
  6. #6

    请问linux的服务器怎么登陆新浪微博

    君子政5个月前 (07-06)回复
    • https://github.com/consatan/weibo_image_uploader
      用的是这个开源项目,我猜测的是利用http://weibo.com/minipublish进行模拟登录,进而获取Cookie值,再通过http://picupload.service.weibo.com/interface/pic_upload.php进行图片上传。

      岩兔站5个月前 (07-06)回复
    • 好像没理解对你的意思。
      只要使用vps的IP登录微博就行,装ss或者VPN之类的代理软件,再在windows电脑上用代理登录微博即可。登录的多了就被认为是可信IP,从而免验证码。

      岩兔站5个月前 (07-07)回复
  7. #5

    怎么没有显示外链呢

    蚁贼君6个月前 (06-12)回复
    • 看下控制台有没有错误提示
      如果是部署到VPS的话确认一下用VPS的IP登录会不会被要求输入验证码

      岩兔站6个月前 (06-12)回复
      • 是用Linux的服务器部署的,而且并没有需要输入验证码,现在就是显示[object Object]

        蚁贼君6个月前 (06-12)回复
        • 程序不能自己返回验证码。你试试已知问题里的两个解决办法

          岩兔站6个月前 (06-13)回复
  8. #4

    请问一下大佬这个是怎么回事呢
    https://ws1.sinaimg.cn/large/006ZFECEgy1fs6ex1hr3xj31990j6wfu.jpg

    萌新6个月前 (06-10)回复
  9. #3

    留个爪,我先去把我的服务器登一段时间微博去。话说,一直在挂QQ。

    感谢分享7个月前 (05-12)回复
    • 验证码问题确实不好弄……只有先用笨办法了

      岩兔站7个月前 (05-13)回复
  10. #2

    为嘛我上传这个源码就是上传不了图片呢?账号密码+配置环境都对啊!

    小瑞8个月前 (04-26)回复
    • 8成是验证码问题。
      我看了原作者的解决方案,也没搞明白。
      然后我用自己服务器IP登录微博大概有一星期,然后现在能随时正常上传了…

      岩兔站8个月前 (04-26)回复
  11. #1

    最好是在本地也做一个备份。

    挖站否8个月前 (04-07)回复
    • 之前的都没备份啊……打算弄个脚本,把网站所有图床文件定期备份出来

      岩兔站8个月前 (04-07)回复