2

ターゲット サイトへのリダイレクト中に JavaScript アクションを含むリダイレクトされた URL を取得しようとしています。

user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like    Gecko) Chrome/22.0.1207.1 Safari/537.1)'
headers = { 'User-Agent' : user_agent }
values = {'name' : 'DealsIndex',  'location' : 'South Bay',  'language' : 'Perl' }
data = urllib.urlencode(values)
req = urllib2.Request("http://www.techbargains.com/jump.cfm?clkSubId=A0AC1A00319410C5900&afsrc=1&id=6860", data, headers)
res = urllib2.urlopen(req)
urlapp = res.geturl()
print urlapp

実際の出力:

http://www.techbargains.com/jump.cfm?clkSubId=A0AC1A00319410C5900&afsrc=1&id=6860

期待される出力

http://shop.panasonic.com/?cm_MMC=AffiliateBanner-_-SeriouslyCool-_-88x31-_-041911

mechanize も使用してみましたが、目的のサイトに到達できません。

4

1 に答える 1

0

このリダイレクトは JavaScript を介して行われるため、それをサポートするブラウザーを使用する必要があります。Mechanize は、そのようなブラウザーの 1 つではありません。

ここにいくつかの良いものがあります

  • Selenium - 言語 (python を含む) を使用して実際のブラウザーを自動化する
  • phantomjs - ヘッドレス Webkit ブラウザー
于 2012-10-14T23:41:40.017 に答える