从python / mechanize浏览器导航和拉取页面时出现问题

时间:2010-11-04 18:11:40

标签: python beautifulsoup mechanize

我正在为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')

2 个答案:

答案 0 :(得分:1)

显然,答案是“你不能这样做”,但this question的答案可能有所帮助。

答案 1 :(得分:0)

我最终使用selenium。如果firefox可以做到,我也可以。