Python 代码实现 ImageTwist 批量上传图片并获取返回 URL
import os, requests
# 登陆信息
username = 'srtzimu'
password = '7018dwdx'
cookie_file = 'cookie.txt'
# 目录路径
dir_path = r'C:\Users\Administrator\桌面\fsdownload'
session = requests.session()
login_url = 'https://imagetwist.com/login'
response = session.get(login_url)
login_data = {
'username': username,
'password': password,
'login': 'submit'
}
response = session.post(login_url, data=login_data)
if response.status_code != 200:
print('登陆成功!')
exit()
with open(cookie_file, 'w') as f:
f.write('; '.join([f'{k}={v}' for k, v in session.cookies.items()]))
# 读取cookie
with open(cookie_file, 'r') as f:
cookie_str = f.read().strip()
# 上传图片
upload_url = 'https://imagetwist.com/upload'
for filename in os.listdir(dir_path):
if filename.endswith('.jpg') or filename.endswith('.png'):
filepath = os.path.join(dir_path, filename)
print(f'Uploading {filepath}...')
files = {'file1': (filename, open(filepath, 'rb'), 'image/jpeg')}
# 设置请求头
headers = {
'Cookie': cookie_str,
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
payload = {
'upload_type': 'file',
'sess_id': 'qysa23rf7bfqme45'
}
response = requests.post(upload_url, files=files, headers=headers, data=payload)
if response.status_code != 200:
print(f'失败 {filepath}!')
else:
print(f'{response.url}')
# 打印返回url页面内容
print(response.text)
该代码使用 Python 的 requests 库实现了以下功能:
- 登录 ImageTwist 网站: 使用用户名和密码登录 ImageTwist 网站,并保存登录后的 Cookie 信息。
- 读取 Cookie: 从保存的 Cookie 文件中读取 Cookie 信息,用于后续请求。
- 批量上传图片: 遍历指定的目录,找到所有 .jpg 或 .png 文件,并逐个上传到 ImageTwist 网站。
- 获取返回 URL: 获取上传成功后图片的 URL 地址,并打印输出。
使用说明:
- 将代码保存为 .py 文件,例如
upload.py。 - 修改代码中的
username、password、cookie_file和dir_path变量,分别对应 ImageTwist 用户名、密码、 Cookie 文件路径和图片存储目录。 - 运行代码,即可实现批量上传图片并获取返回 URL 的功能。
注意:
- 该代码仅供学习参考,请勿用于任何非法活动。
- 上传图片前请确保您已经阅读并同意 ImageTwist 网站的使用条款。
sess_id参数的值可能需要根据实际情况进行修改。- 代码中使用了
print()函数进行输出,您可以根据需要修改输出方式。 - 为了安全,建议不要将密码硬编码在代码中,可以使用环境变量或其他安全方式存储密码。
- 代码中使用了
requests库,请确保您已经安装该库。如果您没有安装该库,可以使用pip install requests命令进行安装。
原文地址: https://www.cveoy.top/t/topic/osgG 著作权归作者所有。请勿转载和采集!