Size: a a a

2021 February 14

i

i in Scrapy
Михаил Синегубов
Ох. Общался я с одним из ботописцев на тему польских виз. Пес..ц, расписание на получение виз выбирается за несколько минут. Когда поставили флешевскую каптчу, они как то вышли на кодера, купили исходники за некоторое количество американских денег.
Хз, чем закончилось, мы как-то потерялись.
Но это реально жопа, это только этой темой жить и ничего более.
Самое ржачное, что в то время на fl постоянно возникали проекты на польскую визу с бюджетом в max 50 usd😂
хах, этот vfsglobal походу с одной целью тока и сделан - унижать простых людей, во-первых агенства и "помогаторы" вообще своими какими-то путями получают запись и еще куча ботов мгновенно разбирают все пока вручную вводишь данные. И с этим даже никто не борется. Подозреваю т.к. кто-то имеет с этого прибыль.

Там достаточно хотя бы начать с запрета ввода номеров нужных загранов со всякими пробелами, чтобы только 1 возможный ввод был, и потом просто разделить время регистрации на событие  и само событие отбора случайным образом - повезло тебе или нет, они даже в какой-то мере это реализовали тогда, но там явно калитку оставили для ботоводов (событие отбора сделали случайным, НО - время регистрации было известно и типа не успел - опоздал, в итоге боты там чуть-ли не ломают им сервак), нет бы давать зарегаться тупо всем на этот день и потом уже выбирать.  А так нехорошие личности регали по 20 аккаунтов, различающихся пробелами, ясное дело у них в 20 раз больше шансов и сверху еще ботами полируют с быстрым отбором. Ощущение создается, что система формально написана так, что должна бороться с ботами, НО не со своими, "правильными" ботами)
источник

i

i in Scrapy
Я посмотрел в свое время на это непотребство, сделал "для дома, для семьи" полуручного бота на селениуме, который создавал 1 акк и соблюдал правила, просто имитировал самую быструю мышку на диком западе, в итоге там где-то раз в несколько минут надо было вводить капчу, ну и он сам в течении часа чтоли уже ловил эти даты,  смутно помню за несколько дней такой неспешной ловли записаться получилось.
источник

i

i in Scrapy
Антон Магурский
комрады, приветствую! подскажите, я что глюк в селёниуме нашёл? вот простой файлик, с 4 тестами на клик двух кнопок. первый элемент в начале страницы находится, второй - похожий на него, чуть пониже. однако, через селениум кликается только 1 из четырёх, или иногда 2 из четырёх. есть ещё такой глюк - если менять местами xpath и css_selector, только первый срабатывает.
тесты запускал на линухе через pytest
https://pastebin.com/z09Z4gZj
а трейсбек показывать кто, Пушкин будет? Тыкая пальцем в небо вангую, что дело зарыто в driver.quit() - каждая функция, когда выполняется первой, тупо закрывает условный хром с  селениумом, и не видно, чтобы драйвер пересоздавался на входе в нее.  Если покажешь трейсбек, там наверное будет плач питона о том, что ты драйвера сверху пристрелил, и его больше не существует.
источник

АМ

Антон Магурский... in Scrapy
i
а трейсбек показывать кто, Пушкин будет? Тыкая пальцем в небо вангую, что дело зарыто в driver.quit() - каждая функция, когда выполняется первой, тупо закрывает условный хром с  селениумом, и не видно, чтобы драйвер пересоздавался на входе в нее.  Если покажешь трейсбек, там наверное будет плач питона о том, что ты драйвера сверху пристрелил, и его больше не существует.
да, согласен. можно запускать каждую функцию отдельно. тогда не будет ситуации с driver.quit. т.е. это наверно победит баг со скриншота. но не победит основную проблему, что нижний элемент невозможно кликнуть.
источник

i

i in Scrapy
выполни test_element_below_xpath первым
источник

АМ

Антон Магурский... in Scrapy
фейл. я запускал их по одному тоже
источник

i

i in Scrapy
хм, тогда трейсбек нужен весь. на что он там плачет, что не может найти элемент?
источник

АМ

Антон Магурский... in Scrapy
i
хм, тогда трейсбек нужен весь. на что он там плачет, что не может найти элемент?
ElementClickInterceptedException
источник

i

i in Scrapy
хммм, поставь для дебага sleep в 1 секунду
источник

АМ

Антон Магурский... in Scrapy
ставил уже. в скорости загрузки нет проблемы
источник

i

i in Scrapy
может не успел прогрузиться он там. если дело в этом, то потом можно натравить туда что-то вроде
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as ec
wait.until(ec.visibility_of_element_located((By.ID, "calendar")))
источник

i

i in Scrapy
ну убери сначала все quick'и таки
источник

АМ

Антон Магурский... in Scrapy
да не в темпе дело. можно поставить 5 секунд на загрузку страницы. а она загружается очень быстро. там картинок практически нет.
источник

i

i in Scrapy
ну хз, все стековеры говорят даже не обязательно, что не прогрузился, а может некликабельный, типа его что-то заслонило. https://stackoverflow.com/questions/48665001/can-not-click-on-a-element-elementclickinterceptedexception-in-splinter-selen
источник

i

i in Scrapy
у меня к примеру такое бывало, когда касперский со своим пассорд-протекшном всплывал на странице.
источник

АМ

Антон Магурский... in Scrapy
ну в общем, если у кого будет вдохновение глянуть на страницу https://www.w3docs.com, то рекомендую. это оказалось весьма интересно. я пока пробую с другой стороны зайти. но это весьма длинный путь.
источник

i

i in Scrapy
Антон Магурский
да не в темпе дело. можно поставить 5 секунд на загрузку страницы. а она загружается очень быстро. там картинок практически нет.
поставь 30 секунд и еще какой-нибудь клик в какой-нибудь элемент. там какой-то AMP и еще iframe есть.
источник

i

i in Scrapy
источник

i

i in Scrapy
судя по этим ответам, там рекомендуют фантом, но тот уже сдох. Можно попробовать Puppeteer/Pyppeteer или этот новый от создателей его
источник

АМ

Антон Магурский... in Scrapy
то есть за 5 секунд не может загрузиться элемент, при этом если рукой кликнуть в эту кнопку, сразу же, то она срабатывает? это так что ли?
источник