Size: a a a

2020 September 13

iz

izzz zzi in Scrapy
cb_kwargs для слабаков
источник

К

Кирилл in Scrapy
meta для динозавров😜
источник

iz

izzz zzi in Scrapy
Кирилл
meta для динозавров😜
скажи еще про follow_all это 😁
источник

К

Кирилл in Scrapy
скажу про extract
источник

iz

izzz zzi in Scrapy
Кирилл
скажу про extract
засчитано
источник

A

Alex in Scrapy
вопрос по перелистыванию страниц
если находит ссылку, передает ссылку функции
если нет я поставил pass
не получиться ли вечный цикл?  
def parse_page(self, response):
 page_links = response.css('#body-container > div:nth-child(3) > div > div.rel.listHandler h3 a ::attr(href)').getall()
 yield from response.follow_all(page_links, callback = self.parse_ads)
 link_next_page = response.css('#body-container > div:nth-child(3) > div > div.pager.rel.clr > span.fbold.next.abs.large ::attr(href)').get()
 if link_next_page:
   yield from response.follow(link_next_page, callback = self.parse_page)
 else:
   pass
источник

К

Кирилл in Scrapy
можешь просто убрать else
источник

A

Alex in Scrapy
Кирилл
можешь просто убрать else
спасибо)
источник

К

Кирилл in Scrapy
и в follow() не нужен yield from, потому что это не генератор
источник

К

Кирилл in Scrapy
Мы то тебе подсказываем, но ты тоже разберись, потому что когда получаешь решение сразу, ты не поймешь, почему нужно именно так. И вот сейчас оно у тебя вылазит, что ты не понимаешь что происходит
источник

К

Кирилл in Scrapy
И это не про скрапи, а про питон в целом
источник

A

Alex in Scrapy
Кирилл
И это не про скрапи, а про питон в целом
с этим согласен
чет подзабыл я питон)
не то что бы я кодил супер много
но стоило забросить это дело на 3-4 месяца и какие то элементарные вещи вылетают из головы
спасибо еще раз за подсказки)
источник

i

i in Scrapy
Alex
есть функция
def parse(self, response):
 links = response.css('#body-container > div > div > div.clr.site-map a ::attr(href)').getall()
 for page in links:
   yield scrapy.Request(page, callback = self.parse_page)

в переменной links 100 ссылок
я ожидаю, что цикл будет передавать по одному значению в функцию parse_page ссылку и функция уже будет обрабатывать эту ссылку
поставил принт перед yield - и вижу что вываливается содержимое всей переменной links
почему так?
тока с follow_all надо еще не забывать yield from
источник

i

i in Scrapy
а, уже написали
источник

i

i in Scrapy
Alex
да разницы никакой собственно)
значит ок
ну ты можешь настройками выставить чтобы был приоритет на то, чтобы парсер шёл "вглубь", а не "вширь", но зачем...
источник

A

Alex in Scrapy
i
тока с follow_all надо еще не забывать yield from
да, спасибо)
источник

i

i in Scrapy
Павел Асеев
Это я понимаю ) Но как?)
лучше не мету а новые эти cb_kwargs, с ними даже легче, сразу их как переменные можно указывать в вызываемой функции, см. туториале
источник

i

i in Scrapy
Кирилл
скажу про extract
get-то меньше писать! если надо писать меньше буковков, я на это перехожу сразу не глядя)
источник

S

SoHard 🎄 in Scrapy
i
get-то меньше писать! если надо писать меньше буковков, я на это перехожу сразу не глядя)
.g() .ga()
источник

i

i in Scrapy
Хотя кого я обманываю, пусть там хоть 30 букв будет, все равно пичарм автодополняет
источник