我试图为 Postimage.org 制作一个图像上传脚本。 我尝试搜索API,但似乎没有可用的。谁能帮我如何制作这个脚本?我不知道如何进行上传过程?我认为我应该做的是以读取二进制模式(“rb”)打开图像文件。 无论如何,我正在等待您的建议和想法。
首先您应该考虑一下当您按下网站上的上传按钮时会发生什么。您的脚本可以做的就是模仿此功能,因为本质上它所触发的只是向 Web 服务器发出 POST 请求,其中包含表单中的指定信息和图像文件数据。您可以使用 Requests (http://docs.python-requests.org/en/latest/index.html) 等库发起 HTTP 请求(例如 GET、POST 等)。
但是,由于这似乎之前已经讨论过,所以我将为您指出正确的方向:使用 Python 脚本中的 POST 发送文件
截至 2024 年 4 月,以下代码有效:
import re
import time
import requests
response = requests.get(url = f'https://postimages.org/')
token_match = re.search('[\'\"]token[\'\"]\s*,\s*[\'\"](\w+)[\'\"]', response.text, re.IGNORECASE)
token = token_match.group(1)
form_data = {
'token' : token,
'expire' : '0',
'numfiles' : '1',
'ui' : '[24,1920,1080,"true","","","2024-04-10, 11:01:04 p.m."]',
'session_upload': f'{round(time.time() * 1000)}',
'upload_referer': 'aHR0cHM6Ly9wb3N0aW1nLmNjLw==',
'upload_session': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
'adult' : '0',
}
response = requests.post(url = f'https://postimages.org/json/rr',
data = form_data,
files={"file": (open(<local_path_to_image_file>, "rb"))}
)