使用Beautifulsoup html.parser解析页面会返回空响​​应

时间:2018-12-07 01:22:27

标签: python-3.x beautifulsoup html-parsing

我写了这段小代码。过去工作正常,但现在返回空响应。我完全不知道为什么它不起作用。我已经多次更改了代码,还使用了诸如lxml之类的不同解析器,但无济于事。我一般都不熟悉编码,因此由于没有实际的运行时错误,我感到很困惑。您能帮我理解为什么soup = BeautifulSoup(page_content, 'html.parser')什么也不返回吗?

这是一小段代码:

import urllib3
from bs4 import BeautifulSoup

open_page = 'google.com'
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
manager = urllib3.PoolManager(1)
page_content = manager.urlopen('GET',open_page)
print(page_content)
soup = BeautifulSoup(page_content, 'html.parser')
print(soup)

1 个答案:

答案 0 :(得分:1)

您似乎已经从urllib2切换到了具有不同接口的urllib3。您对BeautifulSoup的呼叫需要与众不同:

soup = BeautifulSoup(page_content.data, 'html.parser')

使用.data返回的响应对象的url open成员。