Регулярное выражение возвращает два значения вместо одного
Парсинг значений по сайту. Есть код страницы (фрагмент из r.text4)
}]},{ id :8428, name : CLTC纯电续航里程(km) , pnid : 1_-1 , valueitems :[{ specid
:59748, value : 550 },{ specid :59749, value : 535 },{ specid :52972, value : 550 },{
specid :53240, value : 535 }]},{ id :1292, name : <span class= hs_kw36_configlt ><
span><span class= hs_kw37_configlt >< span>(小时) , pnid : 1_-1 , valueitems :[{ specid
:59748, value : 0.75 },{ specid :59749, value : 0.75 },{ specid :52972, value : 0.75 },
{ specid :53240, value : 0.75 }]},{ id :8454, name :
он обрабатывается выражением:
NEDCa=r"id :8428, name.{50,100}?value : (\d\d\d)"
NEDC=str(re.findall (NEDCa, r.text4))
вместо ожидаемого получения числа 550 за одну итерацию выдает пару значений:
['550', '550']
алгоритм в цикле собирает все 4 значения, все работает норм, везде пары берет
Ответы (1 шт):
Автор решения: Oleh Babanin
→ Ссылка
Решить базовый вопрос не удалось. Был применен метод дополнительной обработки некачественной выборки. Костыль. Из результата (парные значения, получающиеся в ходе поиска регулярным выражением, при том что известна маска ответа, делается выборка с помощью индекса переменной.