我正在尝试发布帖子,将img上传到https://pasteboard.co/,但是我总是收到500响应,告诉我,文件丢失。
该文件确实存在,并且路径正确,我不知道问题出在哪里。
import mechanicalsoup
browser = mechanicalsoup.StatefulBrowser()
browser.set_user_agent(
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36')
response = browser.open('https://pasteboard.co/')
payload = {"file": open('C:/Users/Oli/Google Drive/IMG_20190616_153432.jpg', 'rb').read()}
response = browser.post('https://pasteboard.co/upload', payload)
它不是以下内容的副本: Upload Image using POST form data in Python-requests
如果我尝试使用相同的代码:
import requests
session = requests.Session()
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'}
session.headers = headers
session.get('https://pasteboard.co/')
image_file_descriptor = open('C:/Users/Oli/Google Drive/IMG_20190616_153432.jpg', 'rb').read()
payload = {"file": image_file_descriptor}
a = requests.post('https://pasteboard.co/upload', files=payload, headers=headers)
我收到502 Bad Gateway错误。
答案 0 :(得分:1)
我使用requests
模块做到了
尝试以下代码:
import requests
import json
header = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}
img_file = open(r'C:/Users/Oli/Google Drive/IMG_20190616_153432.jpg', 'rb')
header['Content-Type'] = 'multipart/form-data'
files = {'file': ('Image.jpg', img_file, 'image/jpeg', {'Expires': '10'}) }
res = requests.post('https://pasteboard.co/upload', files=files)
uploaded_image_name = json.loads(res.content.decode('utf-8'))['fileName']
print(f'New Link: https://pasteboard.co/{uploaded_image_name}')
如果上传png,只需更改以下内容:
1。首先,
files = {'file': ('Image.png', img_file, 'image/png', {'Expires': '10'}) }
2。图片的路径。
检查是否适合您。