2010-11-04 114 views
0

我正在爲this網站創建一個刮板。索引是一個多頁索引。爲了進入第二頁,我需要點擊「下一頁」按鈕(頁面左側的兩個小箭頭),這是一個JavaScript鏈接。導航和拉頁形成蟒蛇/機械化瀏覽器的問題

我正在建設的功能是應該附加頁面湯,以便我可以稍後解析它。它被設計成遞歸的。

我有一個自定義的機械化瀏覽器,我自己就用它。

我確切的問題是,我不能得到第二和第三頁的湯,等等。

這是我的代碼。非常感謝您的時間和幫助。

def append_page(self, url, soup): 
     m=soup.find('image',attrs={'id':'BTNNEXT'}) 
     if m : 
      # Print HTTP headers. 
      self.br.set_debug_http(True) 
      response1 = self.br.follow_link(mechanize.Link(base_url = '', url = url, text = '', tag = '', attrs = [{'id':'BTNNEXT'}])) 
      html=response1.read() 
      soup2 = self.index_to_soup(html) 
      self.append_page(url,soup2) 
     texttag =soup.find('input',attrs={'name':'rsSearchRes_Count'}) 
     append = soup.texttag.findNext('tbody') 

回答

1

顯然,答案是「你不能這樣做」,但答案this question可能會有幫助。

+0

多麼令人沮喪。什麼是機械化,鏈接呢?爲什麼我會從set_debug_http中看到一個很好的'GET'請求? – user850498 2010-11-06 20:12:26

+0

@ user475647你會得到純html鏈接,而不是javascript鏈接,如果你在瀏覽器中關閉了javascript,你會得到同樣的結果。 – 2010-11-06 22:13:02

0

我結束了使用selenium。如果Firefox能做到這一點,那麼我也可以。