2

我刚刚从urllib2用作我的 HTTP 访问库切换到使用该request库。在 urllib 中,您使用BeautifulSoup该函数来拉取 html 元素findAll(tag='element'),我是继续以相同的方式使用 BeautifulSoup 还是 request 具有简化此过程的函数?


使用 urllib2 拉取标签


import urllib2
from bs4 import BeautifulSoup as BS

response = urllib2.urlopen('http://stackoverflow.com/')
soup = BS(response)

for a in soup.findAll('a'):
    print a['href]

使用请求拉取标签


import response

response = request.get('http://stackoverflow.com/')

for a in response.findAll('a'):
    print a['href]
4

1 回答 1

1

request仅使从 URL 获取数据变得更容易,尤其是在存在重定向等情况下。它不会HTML为您解析正文,您仍然应该这样做BeautifulSoup并将其导入添加到您的第二个代码片段, 和类似的东西:

soup = BS(response.text)
于 2013-03-21T07:30:20.943 回答