Python 3.5 із веб-драйвером Selenium, 485 427 469 461 449 414 403 байт:
from selenium.webdriver import*;import time;D=Chrome();I=lambda k:D.find_element_by_name(k);C='comment';D.get('http://www.codegolf.stackexchange.com/users/login');I('email').send_keys(U);Z=I('password');Z.send_keys(P);Z.submit();D.get('http://www.codegolf.stackexchange.com/questions/84546');D.find_element_by_link_text('add a '+C).click();E=I(C);E.send_keys('1234567890123456');time.sleep(1);E.submit()
Повна програма, що використовує просте рішення веб-драйвера Python селену. Працює в Chrome, хоча для роботи потрібен ChromeDriver . Працює шляхом перейменування U
та відповідно P
до електронної пошти та пароля користувача Stack Exchange. Однак якщо виникають проблеми з встановленням ChromeDriver, ось рішення FireFox, яке виконується точно таким же чином, як і вищезгадане рішення, і не потребує жодних драйверів, хоча наразі на 1 байт довше в 414 404 байти :
from selenium.webdriver import*;import time;D=Firefox();I=lambda k:D.find_element_by_name(k);C='comment';D.get('http://www.codegolf.stackexchange.com/users/login');I('email').send_keys(U);Z=I('password');Z.send_keys(P);Z.submit();D.get('http://www.codegolf.stackexchange.com/questions/84546');D.find_element_by_link_text('add a '+C).click();E=I(C);E.send_keys('1234567890123456');time.sleep(1);E.submit()
Крім того, якщо потрібна функція, ось рішення, яке використовує функцію анонімної лямбда, яка наразі стоїть на 513 455 497 489 477 449 431 байт та використовує Chrome як браузер.
lambda U,P:exec("from selenium.webdriver import*;import time;D=Chrome();I=lambda k:D.find_element_by_name(k);C='comment';D.get('http://www.codegolf.stackexchange.com/users/login');I('email').send_keys(U);Z=I('password');Z.send_keys(P);Z.submit();D.get('http://www.codegolf.stackexchange.com/questions/84546');D.find_element_by_link_text('add a '+C).click();E=I(C);E.send_keys('1234567890123456');time.sleep(1);E.submit()",locals())
Однак якщо знову виникають проблеми щодо ChromeDriver, тут є рішення одного типу, але цього разу за допомогою Firefox, який наразі становить 442 432 байти :
lambda U,P:exec("from selenium.webdriver import*;import time;D=Firefox();I=lambda k:D.find_element_by_name(k);C='comment';D.get('http://www.codegolf.stackexchange.com/users/login');I('email').send_keys(U);Z=I('password');Z.send_keys(P);Z.submit();D.get('http://www.codegolf.stackexchange.com/questions/84546');D.find_element_by_link_text('add a '+C).click();E=I(C);E.send_keys('1234567890123456');time.sleep(1);E.submit()",locals())
Ви називаєте ці лямбда-функції, просто перейменувавши цю функцію на будь-яку дійсну, а потім зателефонувавши за допомогою електронної пошти та пароля, як звичайну функцію. Наприклад, якби функція була названа H
, ви б назвали її так H(Email, Password)
.