Вы можете использовать метод post запроса, чтобы отправить отформатированную строку на ваш крючок.У меня есть опыт работы с Discord, но я не ставил Hook раньше.Если ключевое слово для поста params
не работает, используйте headers
.Приспособьте этот код к своему проекту и сообщите мне, если у вас есть какие-либо вопросы или другие ошибки с запросом.
import json
from bs4 import BeautifulSoup
import requests
payload = {'username': 'myname',
'icon_url': 'myavatar.png'}
SHOE_URI = 'http://www.jimmyjazz.com/mens/footwear/adidas-superstar/S82215?color=Brown'
DISCORD_HOOK_URI = 'https://discordapp.com/whateverapi'
source = requests.get(SHOE_URI).text
soup = BeautifulSoup(source, 'html.parser')
page = soup.find('div', class_='box_wrapper')
sizes = page.find_all('a')
avail = dict() # keeps track of the status for each size
for pid in sizes:
if "piunavailable" in pid["class"]:
avail[pid.getText()] = "out of stock"
else:
avail[pid.getText()] = "instock"
maxlen = max(map(len, avail.keys())) # for right-justified string formatting
string = '\n'.join("{:>{}}: {}".format(size, maxlen, value) for size, value in avail.items())
myheaders['content'] = string
req = requests.post(DISCORD_HOOK_URI, params=payload)
if req.status_code != 200:
print('post failed with error', req.status_code, 'because', req.reason)
else:
print('post success')