НЕпонимаю как занести таблицу html в строку csv - Парсинг HTM Pyton 3
Добрый день парсю вот такую страницу, https://velopioneer.ru/product/pioneer-boomer/, точнее 56 таких страниц.
Делаю файл парсинга под woocomerse необходимый формат:
Заголовки: "Имя атрибута 1";"Значение(-я) аттрибута(-ов) 1";"Видимость атрибута 1";"Глобальный атрибут 1";"Имя атрибута 2";"Значение(-я) аттрибута(-ов) 2";...
Строка1: Бренд;Морент;1;1;"Диаметр колеса";"20""";1;1;...
Собрал все картинки, цену и тп Застрял в "детали" - харктеристики товара они же атрибуты.
--- нужно получить один товар одна строка т.е. в идеале должно выглядеть как в файле образец, вот на него ссылка: https://www.dropbox.com/s/xno4i4or9xgr6f3/etalon.csv?dl=0
не могу собрать в одну строку результат парсинга таблицы
Я первый раз здесь, извиняюсь что не смог вставить весь код вот файл со всем кодом ссылка на файл всего парсера: https://www.dropbox.com/s/u5ivv02gylatgnx/page.py?dl=0
И вторая проблема как записать это все в файл учитывая что количество строк у товаров в таблице "детали" - разное,
def get_content(html):
soup = BeautifulSoup(html, 'html.parser')
item51 = soup.find('table', class_='woocommerce-product-attributes shop_attributes').findAll('th')
item52 = soup.find('table', class_='woocommerce-product-attributes shop_attributes').findAll('td')
item53 = soup.find('table', class_='woocommerce-product-attributes shop_attributes').find(class_='woocommerce-product-attributes-item woocommerce-product-attributes-item--weight')
for i in range(int(len(item52))):
atrib.append({
'Имя атрибута ' + str(i) : item51[i].get_text(strip=True),
'значение атрибута ' + str(i) : item52[i].get_text(strip=True),
'Видимость атрибута ' + str(i) : '1',
'Глобальный атрибут ' + str(i) : '1'
})
```python
def save_file(items, path):
with open(path, 'w', newline='', encoding='utf8') as file:
writer = csv.writer(file, delimiter=';')
writer.writerow([ 'Имя атрибута 1', 'значение атрибута 1', 'Видимость атрибута 1', 'Глобальный атрибут 1'])
for item in items:
writer.writerow([ item['Имя атрибута 1'], item['значение атрибута 1'], item['Видимость атрибута 1'], item['Глобальный атрибут 1'] ])
[1]: https://www.dropbox.com/s/kgmai679n0649v3/%D0%AD%D1%82%D0%B0%D0%BB%D0%BE%D0%BD-1-1.txt?dl=0
[2]: https://www.dropbox.com/s/u5ivv02gylatgnx/page.py?dl=0