рубин механизировать в фейсбуке - PullRequest
3 голосов
/ 04 февраля 2010

Я пытаюсь нажать кнопку «Настройки» на домашней странице, но когда мне удается вернуть эту страницу:

#<WWW::Mechanize::Page
 {url
  #<URI::HTTP:0x1023c5fc0 URL:http://www.facebook.com/editaccount.php?ref=mb&drop>}
 {meta}
{title nil}
{iframes}
{frames}
{links}
{forms}>

что .. вроде пусто! Есть ли какие-то проблемы с этими элементами iframes и frame?

Ответы [ 2 ]

3 голосов
/ 01 октября 2012

Как упоминалось в roja, следующие перенаправления могут быть тем, что вам нужно. Вот пример того, как это сделать:

@agent = Mechanize.new
@agent.redirect_ok = :all
@agent.follow_meta_refresh = :anywhere

Тогда вы можете в значительной степени игнорировать тот факт, что есть перенаправления - Mechanize просто поместит вас на получившуюся страницу.

2 голосов
/ 04 февраля 2010

Facebook перенаправляет меня на: https://register.facebook.com/editaccount.php, который я предполагаю, является конечным пунктом назначения. Предполагая, что WWW :: Mechanize настроен на выполнение перенаправлений https, вы тоже должны оказаться там.

Большая часть Facebook, как и большинство современных веб-сайтов, создается с помощью javascript, который, я думаю, не справляется с WWW :: Mechanize, это может быть источником вашей проблемы. Я рекомендую попробовать очистить, добавляя "? _Fb_noscript = 1" к URL, который вы посещаете. Это отключает большую часть системы javascript на Facebook и должно обеспечить более плавную езду для вашего маленького бота.

(Помните, что это всего лишь идея и, без сомнения, все, что вы делаете, противоречит политике использования Facebook, и это делает вас "плохим парнем". Я не одобряю такую ​​злобу и не верю, что злодеев нужно заставлять рано ложиться спать и т.д. ... до тошноты )

...