re.match
ищет вхождение в начале строки. Скорее всего ваша регулярка находится где-то в середине текста. Попробуйте заменить на re.search
https://img.youtube.com/vi/VIDEO_ID/hqdefault.jpg
, где VIDEO_ID
- id видео, from urllib import parse
url = 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
video_id = parse.parse_qs(parse.urlparse(url).query)['v'][0]
thumbnail_url = f'https://img.youtube.com/vi/{video_id}/hqdefault.jpg'
telebot save user answerи им подобным. Решение есть в примерах библиотеки на ее гитхабе. Нужно просто приложить два грамма старания
import tkinter as tk
- нормальный вариантПоявляется, когда я переключаюсь на другое окно vs code и обратноа до переключения окно tkinter нормально появляется? Рядом случайно нет еще одного файла
tkinter.py
? Хотя по варнингам с вайлдкарда похоже, что нет. Приложите полный код и полную ошибку, которую получаете *args, **kwargs
, так что все данные можно сохранять просто в словарь и передавать в register_next_step_handler
как еще один параметр FFD9
- последние байты изображения формата jpg. fimrin.jpg
и сохраняет в better_fimrin.jpg
f1 = open('orange.jpg', 'rb')
f2 = open('apple.jpg', 'rb')
with open('out.jpg', 'wb') as out:
out.write(f1.read()+f2.read())
out.jpg
, который в просмоторщике фото будет выглядеть как апельсин. Хотя на самом деле, после апельсина дописаны байты яблока. Очень упрощеноorangeblablablaFFD9applelalalalaFFD9
f = open('fimrin.jpg', 'rb')
content = f.read()
with open('better_fimrin.jpg', 'wb') as out:
out.write(content[content.index(bytes.fromhex('FFD9')) + 2:])
python2 get-pip.py
как винда будет понимать что мне нужно использовать в том или ином случае pip от той или иной версии Python?
python2 -m pip
params = {'access_token': TOKEN, 'v': 5.131, 'message_ids': [369]}
r = requests.get('https://api.vk.com/method/messages.getById', params=params)
print(r.json()['response']['items'][0]['attachments'][0]['photo']['sizes'])
r = requests.get('{server}?act=a_check&key={key}&ts={ts}&wait=90'.format(server=data['server'], key=data['key'], ts=data['ts'])).json()
print(r['updates'][0]['object']['message']['attachments'][0]['photo']['sizes'])
@bot.command()
async def kick(ctx, member: discord.Member):
@kick.error
async def kick_error(ctx: commands.Context, error: commands.CommandError):
# здесь уже делаем что хотим, в зависимости от класса ошибки. Например, если не хватило аргумента, то можно сделать так
if isinstance(error, discord.ext.commands.errors.MissingRequiredArgument):
await ctx.send('Недостаточно аргументов')
можно также автоматически заходить на указанную почту, в которую пришло письмо с кодом, парсить его оттуда и вставлять в поле при регистрации
Придётся создавать аккаунт, отдельно для него. Все это, опять же, нужно автоматизировать, что, в свою очередь, займёт время и много лишний движений
Может, запрос перехватить?
headers = {'User-Agent': 'ваш UA'}
request.post(url, data=data, headers=headers)
raw_req = requests.Request('POST', url, data=data)
prepared = raw_req.prepare()
s = requests.Session()
r = s.send(prepared)
imprort json
data = {"chat_id": chat_id, "text": text, "reply_markup": json.dumps(reply_markup)}
data = {"chat_id": chat_id, "text": text, "reply_markup": reply_markup}
requests.post(url, json=data)