jlist = [{"id":"214115596"},{"id":"2476115554"},{"id":"544664596"},{"id":"215465596"},{"id":"21655596"},{"id":"2154665596"}]
zapetaya=[]
for items in jlist:
value = int(items['id'])
zapetaya.append(value)
print (zapetaya)
Так вам неважно какой сайт вернул то что у него есть с вашими параметрами запроса. То есть запросили Вы у него text/HTML он его и вернул, если сайт умеет json отдавать, попросите у него json и распарсите.
Поясните, каким образом должен образоваться словарь, что в нём должно оказаться?
У Вас значение message.text[7:] равно "/t.me/test_bot?start=139513584" - как Вам Python из этого тип int соберёт?
Вам что на выходе получить нужно?
Если Вам число на конце нужно, причем оно всегда такой длины, то нужно использовать отрицательные значения в срезе
text="https://t.me/test_bot?start=139513584"
ref_id = int(text[-9:])
Если Вам вытащить то что после start равно, вдруг там другая длина или вообще буквы можете попробовать split
text="https://t.me/test_bot?start=139513584"
text.split("?start=")
print (text.split("?start=")[1])