【Python爬虫】论坛发帖辅助脚本

打印 上一主题 下一主题

主题 872|帖子 872|积分 2616

因为论坛发帖手动插入链接太费时间,所以我自己用Python爬虫写了一个小脚本,用来自动上传图片到图床,然后返回链接,我们只需直接复制链接就可以啦
因为不同图床需要提交的POST表单不一致,所以在这里我用ImgURL图床做示范,如果大家有需求,可自行修改代码。
使用脚本的时候,我们只需把需要上传的图片和这个脚本放在同一个文件夹中,然后运行脚本,稍作等待,看到提示时就可以在脚本运行文件夹中发现一个名为“图片链接.txt”的文件,里面就是图片链接啦!
代码如下:
  1. # -- coding:UTF-8 --
  2. import requests
  3. import os
  4. import glob
  5. def get(filename):
  6.     url = "https://www.imgurl.org/upload/aws_s3"
  7.     files = {'file': open(filename, 'rb')}
  8.     data = {'file': files}
  9.     headers = {
  10.         'User-Agent':
  11.         'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
  12.     }
  13.     response = requests.post(url, files=files, data=data, headers=headers)
  14.     json = response.json()
  15.     return "%s" % (json['url'])
  16. filelist = []
  17. filelist.extend(glob.glob(os.path.join("./", "*.jpg")))
  18. filelist.extend(glob.glob(os.path.join("./", "*.png")))
  19. filelist.extend(glob.glob(os.path.join("./", "*.webp")))
  20. filelist.extend(glob.glob(os.path.join("./", "*.jpeg")))
  21. # 以上内容可自行修改,将代码中的后缀名修改一下就可以匹配更多你想要的文件名啦!
  22. f = open('图片链接.txt', 'a')
  23. f.write("Markdown:\n")
  24. for pictures in filelist:
  25.     f.write("![](%s)\n" % get(pictures))
  26. f.write("\n\n\nBBcode:\n")
  27. for pictures in filelist:
  28.     f.write("[img]%s[/img]\n" % get(pictures))
  29. f.close()
  30. print("链接已生成,请在脚本所在文件夹中找到名为“图片链接.txt”的文件,里面就是图片链接啦!")
复制代码
开源地址:https://github.com/yunlongzhuhuo/pictures-uploader
效果如下:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

知者何南

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表