Тестовые аккаунты Facebook с использованием селена - не удается войти в систему моих фальшивых пользователей
Я программно создаю тестовые учетные записи, а затем сразу же пытаюсь войти в них с помощью браузера, управляемого селеном. К сожалению, браузер просто перенаправлен на домашнюю страницу Facebook. Я могу кратко увидеть то, что кажется правильным URL-адресом до перенаправления флеш-памяти, поэтому у меня нет оснований полагать, что браузер движется не туда, куда я намереваюсь.
Тем не менее, если создать поддельную учетную запись, а затем просто вставить login_url в браузер, все работает нормально. У кого-нибудь есть идеи, почему это может быть уникальным в использовании здесь Selenium? Что мне нужно сделать, чтобы подготовить браузер для соединений https или что-то еще?
Все, что я делаю, это: (используя капибару и веб-драйвер Selenium)
посетите @ fake_user.login_url
https://www.facebook.com/platform/test_account_login.php?user_id=100002152974488&n=ILRvb8Lqf2cq05t
GET /platform/test_account_login.php?user_id=100002152974488&n=ILRvb8Lqf2cq05t HTTP / 1.1 Хост: www.facebook.com Пользователь-агент: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15 Accept: text/html,application/xhtml+xml,application/xml;q=0,9,/; q = 0,8 Accept-Language: en-us,en;q=0,5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0,7,*;q=0,7 Keep-Alive: 115 Подключение: keep-alive
HTTP / 1.1 302 Найдено Cache-Control: частный, без кеша, без хранилища, обязательно повторная проверка Срок действия истекает: суббота, 01 января 2000 00:00:00 по Гринвичу Местоположение: http://www.facebook.com/ P3P: CP = "У Facebook нет политики P3P. Узнайте, почему здесь: http://fb.me/p3p" Прагма: Set-Cookie без кэша: datr=d3J_TWSAN5uIXyh94O1YJkJ8; истекает = чт, 14 марта 2013 г. 14:06:47 по Гринвичу; Путь = /; домен =.facebook.com; httponly Set-Cookie: lsd=-Lv-N; Путь =/; domain=.facebook.com Content-Type: text/html; charset=utf-8 X-Powered-By: HPHP X-FB-Server: 10.52.145.67 X-Cnection: close Дата: вторник, 15 марта 2011 г. 14:06:47 GMT
Длина контента: 0
GET / HTTP / 1.1 Хост: www.facebook.com Пользовательский агент: Mozilla / 5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv: 1.9.2.15) Gecko / 20110303 Firefox / 3.6.15 Принять: text / html, application / xhtml + xml, application / xml; q = 0,9,/; q = 0,8 Accept-Language: en-us,en;q=0,5 Accept-Encoding: gzip, deflate Accept-Charset: ISO-8859 -1, utf-8; q = 0,7,*;q=0,7 Keep-Alive: 115 Соединение: keep-alive Cookie: datr=d3J_TWSAN5uIXyh94O1YJkJ8; LSD = -LV-N
HTTP / 1.1 200 OK Cache-Control: частный, без кеша, без хранилища, обязательно повторная проверка Срок действия истекает: суббота, 01 января 2000 00:00:00 GMT P3P: CP="Facebook не имеет политики P3P. Узнайте, почему здесь: http://fb.me/p3p"Pragma: без кэширования Set-Cookie: reg_fb_gate=http%3A%2F%2Fwww.facebook.com%2F; Путь =/; domain=.facebook.com Set-Cookie: reg_fb_ref = http% 3A% 2F% 2Fwww.facebook.com% 2F; Путь = /; domain =.facebook.com Кодировка содержимого: gzip Тип содержимого: text/html; charset=utf-8 X-Powered-By: HPHP X-FB-Server: 10.52.163.25 X-Cnection: закрыть Transfer-Encoding: chunked Дата: вторник, 15 марта 2011 г. 14:06:47 GMT
1 ответ
Посетите домашнюю страницу Facebook, прежде чем пытаться зайти на страницу входа:
visit "https://www.facebook.com"
visit @fake_user.login_url
Я не проверял заголовки, но я предполагаю, что Facebook устанавливает файлы cookie, необходимые для входа в систему.