python 抓取指定页面

时间:2021-10-14 08:56:04

import urllib.request

url = "http://www.baidu.com"

data = urllib. request.urlopen(url).read()

data = data.decode('UTF-8')

print(data)

 

urllib.request是一个库,隶属urllib.urllib有几个子库, 我们暂时用到了request, 所以我们先看urllib.request部分. 首先看到的是一句话介绍这个库是干什么用的:

The urllib.request module defines functions and classes which help in opening URLs (mostly HTTP) in a complex world — basic and digest authentication, redirections, cookies and more.

然后把我们代码中用到的urlopen()函数部分阅读完.

urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False)

重点部分是返回值, 这个函数返回一个 http.client.HTTPResponse 对象, 这个对象又有各种方法, 比如我们用到的read()方法, 这些方法都可以根据官方文档的链接链过去. 根据官方文档所写, 我用控制台运行完毕上面这个程序后, 又继续运行如下代码, 以更熟悉这些乱七八糟的方法是干什么的.

>>> a = urllib.request.urlopen(full_url)>>> type(a)<classhttp.client.HTTPResponse’> >>> a.geturl()http://www.baidu.com/s?word=Jecvay’ >>> a.info()<http.client.HTTPMessage object at 0x03272250> >>> a.getcode()200