什么是美味汤的方法?

时间:2014-05-01 18:47:03

标签: python django beautifulsoup robobrowser

我正在试验http://robobrowser.readthedocs.org/en/latest/readme.html,这是一个基于美丽汤库的新python库。我试图通过打开一个html页面并在django应用程序中返回它来测试它,但我无法想出去做这个最简单的任务。我的django应用程序包含:

def index(request):    

    p=str(request.POST.get('p', False)) # p='https://www.yahoo.com/'
    browser = RoboBrowser(history=True)
    browser.open(p)
    html = browser.find_all
    return HttpResponse(html)

当我看到输出的html时,我看到了:

<bound method BeautifulSoup.find_all of 
    <!DOCTYPE html>
    <html>
    ......................
        <head>
    ...............
        </body>
    </html>
>

什么是美味汤的方法?我怎样才能获得直接的HTML?

1 个答案:

答案 0 :(得分:3)

它是绑定到BeautifulSoup对象的方法对象。你没有打电话

它的表示有点令人困惑,因为包含了BeautifulSoup解析树的repr(),它只是呈现为HTML源字符串的树。

要获取底层的BeautifulSoup解析树,您可以使用;使用str()将其转换回源字符串:

html = str(browser.state.parsed)

或者,您仍然可以使用以下命令访问原始requests响应对象:

browser.state.response

表示原始下载的HTML为:

html = browser.state.response.content