Size: a a a

2020 September 26

AR

Andrey Rahmatullin in Scrapy
Переслано от Andrey Rahmatullin
либо вы опять путаете данные и их представление
источник

AR

Andrey Rahmatullin in Scrapy
туда же любители читать жсон текстовым редактором
источник

AR

Andrey Rahmatullin in Scrapy
с контейнерами надо работать как с контейнерами, а не как с потоком байтов
источник

i

i in Scrapy
ну тут хотя бы сайт дали, а не пастебин
источник

i

i in Scrapy
Павел Асеев
Например из текста <p.*?> на <p> и т.д. Ну это как пример.
а можно пример поподробней, а то не очень понятно. И особенно связь с item, имеется в виду не scrapy-евский item, а тег что-ли в html?
источник

i

i in Scrapy
и что такое <p.*?> - это регулярка что-ли или чего?
источник

ПА

Павел Асеев... in Scrapy
Например мне нужно собрать характеристики товара:

item['Характеристики'] = response.xpath('//table[@class="table ware-table"]//tr').getall()
item['Характеристики'] = '\n'.join(item['Характеристики'])

И мне нужно чтобы они выглядели вот так в итоге в CSV
Характеристики|Бренд|Creo Ceramique
Характеристики|Код|00057546
Характеристики|Высота, см|84,5

Т.е. В данном случае я бы хотел сделать замены:
^ на Характеристики|
</td>.*?<td.*?> на |
источник

ПА

Павел Асеев... in Scrapy
источник

ПА

Павел Асеев... in Scrapy
Я вижу только вариант c re.sub
источник

AR

Andrey Rahmatullin in Scrapy
я б циклом сделал и не парился
источник

К

Кирилл in Scrapy
Павел Асеев
Например мне нужно собрать характеристики товара:

item['Характеристики'] = response.xpath('//table[@class="table ware-table"]//tr').getall()
item['Характеристики'] = '\n'.join(item['Характеристики'])

И мне нужно чтобы они выглядели вот так в итоге в CSV
Характеристики|Бренд|Creo Ceramique
Характеристики|Код|00057546
Характеристики|Высота, см|84,5

Т.е. В данном случае я бы хотел сделать замены:
^ на Характеристики|
</td>.*?<td.*?> на |
Как насчет просто взять селекторами значения td?
источник

К

Кирилл in Scrapy
зачем что-то заменять
источник

ПА

Павел Асеев... in Scrapy
Можно ) Да хз, просто так привык в работе с программой парсером. А в программировании всё по другому ) Вот переучиваюсь )
источник

ПА

Павел Асеев... in Scrapy
Спасибо.
источник

i

i in Scrapy
Ты по-сути делаешь работу за парсеры и селекторы.
1. рекомендую всегда использовать css-селекторы, если уже с ними не получается, тогда xpath
2. посмотри еще на либу html_text
3. ну и да, ты как-то сильно уровень выше взял, и зачем-то его еще сразу присвоил в item['Характеристики'] вместо того, чтобы их нормально взять циклом, из-за этого куча геморроя со всякими '\n'.join  и заменами с регулярками.
источник

i

i in Scrapy
Ну например:
scrapy shell https://santehcentr.com/catalog/sanfayans-toulon/detail/toulon-rakovina-s-pedestalom-600-480-845/
[[x.css('td::text')[0].get(), html_text.extract_text(x.css('td')[1].get())] for x in response.css('.table.ware-table>tbody>tr')]
источник

i

i in Scrapy
и ты уже получишь https://i.imgur.com/aUAlJg3.png
источник

ПА

Павел Асеев... in Scrapy
i
Ты по-сути делаешь работу за парсеры и селекторы.
1. рекомендую всегда использовать css-селекторы, если уже с ними не получается, тогда xpath
2. посмотри еще на либу html_text
3. ну и да, ты как-то сильно уровень выше взял, и зачем-то его еще сразу присвоил в item['Характеристики'] вместо того, чтобы их нормально взять циклом, из-за этого куча геморроя со всякими '\n'.join  и заменами с регулярками.
Это немного проясняет ) Спасибо большое!)
источник

i

i in Scrapy
(хотя лично я не люблю оперировать по индексам, т.к. редко таблицы бывают реально "прямоугольные", часто там сбоку еще какие-нибудь поля, в одном месте по 5 характеристик, в другом по 10, а сбоку еще блямба торчит)
источник

VR

Vadim Ryzhkov in Scrapy
Здравствуйте, мне посоветовали задать вопрос в этой группе

Вопрос по селениуму:
Как можно использовать https прокси с аутентификацией? (хром)
источник