Как из списка вырезать весь текст и записать в новый список?
Как из списка вырезать весь текст и записать в новый список? 1.С помощью регулярного выражения. 2.С помощью другого метода.
Причем что бы отдельные слова не сливались и были разделенные пробелом.
Список
['["N 70","Вытяжка для настенного монтажа","","60 cm","нержавеющая
сталь","D65BCP2N0"', '["Serie | 2","Компактная посудомоечная
машина","","55 cm","Белый","SKS41E11RUB"', '["Serie | 4","Газовая
варочная панель","","60 cm","Pearl white","PGP6B1B60R"',
'["","Комплект для смены цвета, для Tassimo TAS20.., коричневый
орех","","","","00649058"', '["","Комплект для смены цвета, для
Tassimo TAS20.., жёлтый лайм","","","","00649057"', '["","Комплект для
смены цвета, для Tassimo TAS20.., мятный
голубой","","","","00649056"', '["","Комплект для смены цвета, для
Tassimo TAS20.., клубничный красный","","","","00649055"',
'["","Кольцо для WOK-конфорки","","","","00647832"', '["","Кольцо для
WOK-конфорки","","","","00647535"', '["","Любителям итальянской кухни:
набор PastaPassion, для MUM8.., MUMX..","","","","00576586"',
'["","Защитный кожух Textile Protect для TDS16.., TDS20.., TDS22..,
TDS35..,","TDS37.., TDS38.., TDS45..","","","00571510"',
'["","Телескопические направляющие для 3 уровней,
комплект","","","","00475131"', '["","Мясорубка + адаптер для
кухонного комбайна, для MUM8.., MUMXL..","","","","00464423"',
'["","Насадка-терка для сыра / шоколада, для
MUM8..","","","","00463718"', '["","Насадка для приготовления
спагетти, для MUM8.., MUMXL..","","","","00463688"',
'["","Декоративная планка; цвет \\"сталь\\"","","","","00299984"',
'["","Комплект для установки компактных посудомоечных
машин","","","","00207709"']
Должен быть список:
[N 70 Вытяжка для настенного монтажа 60 cm нержавеющая сталь D65BCP2N0
, Serie | 2 Компактная посудомоечная машина 55 cm Белый SKS41E11RUB ,
Serie | 4 Газовая варочная панель 60 cm Pearl white PGP6B1B60R , ...
]
Код для получения начального списка. Список берется из спарсенной страницы в части , в которой данные формируются JavaScrip.
Вырезаю все данные после слова "headers"
#срезы с использование регулярных выражений
def find_segments(text, start, end):
pattern = re.escape(start) + r'(.*?)' + re.escape(end)
return re.findall(pattern, text, flags=re.DOTALL)
f = open('srez.txt','w', encoding='utf-8') # открывает файл для записи
srez = find_segments(str(items), '"headers":', ']') # создает списко из срезов
f.write(str(srez)) # запись в файл данных srez.txt
f.close()
Вот такая строчка в спарсенной странице ищется и вырезается до символа ]
"headers":["","Комплект для смены цвета, для Tassimo TAS20..,
коричневый орех","","","","00649058"],
Ответы (1 шт):
Автор решения: Webos
→ Ссылка
Вот решение, которое мне подходит
# вырез из списка только текста
res = [] # создание нового списка
lst = srez
for el in lst:
res.append(el.split(",")[0].replace('"','') +" "+ el.split(",")[1].replace('"','') +" "+ el.split(",")[2].replace('"','')+" "+ el.split(",")[3].replace('"','')+" "+ el.split(",")[4].replace('"','')+" "+ el.split(",")[5].replace('"','') )