3

ホームページの[設定]ボタンをクリックしようとしていますが、クリックすると次のページに戻ります。

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

これは..ちょっと空です!これらのiframeやフレームに問題があるのでしょうか?

4

2 に答える 2

3

roja が述べたように、次のリダイレクトが必要になる場合があります。これを行う方法の例を次に示します。

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

そうすれば、関連するリダイレクトがあるという事実をほとんど無視することができます.Mechanizeは単に結果のページにあなたを置きます.

于 2012-10-01T02:44:41.427 に答える
2

Facebook は私をhttps://register.facebook.com/editaccount.phpにリダイレクトします。これが最終的な宛先だと思います。WWW::Mechanize が https リダイレクトに従うように設定されていると仮定すると、あなたもそこにたどり着くはずです。

ほとんどの最新の Web サイトと同様に、facebook の多くは、WWW::Mechanize が対応できないと思われる JavaScript によって生成されます。これが問題の原因である可能性があります。アクセスしたURLに「?_fb_noscript=1」を追加しながらスクレイピングを試みることをお勧めします。これにより、Facebook の JavaScript システムの多くがオフになり、小さなボットがよりスムーズに使用できるようになります。

(これは単なるアイデアであり、Facebookの使用ポリシーに違反していることは間違いないことを覚えておいてください。これにより、あなたは「悪者」になります。私はそのような悪意を容認しません。うんざり

于 2010-02-04T19:49:23.793 に答える