📜  python 获取 url - Python (1)

📅  最后修改于: 2023-12-03 15:34:13.322000             🧑  作者: Mango

Python中如何获取url

在开发web应用程序时,获取url是一个重要的操作。Python中有许多库可以完成这个任务,比如requestsurllibbeautifulsoup4等等。这些库在获取url的方法和使用上都有所不同,我们将在下面一一介绍。

使用requests库获取url

requests库是Python中最流行的http请求库之一,可以用来获取url,并且支持各种请求方法,如GETPOSTPUTDELETE等等。

获取url的方法:

import requests

response = requests.get('http://www.github.com')

html = response.text
print(html)

这个例子中,我们使用了requests.get()方法发起一个GET请求,并将结果存储在response变量中。然后,我们使用response.text获取响应的html文本,并输出到控制台。

使用urllib库获取url

urllib库是Python标准库中一个包含url请求、解析、编码、解码等功能的库。可以使用urllib.request模块中的urlopen()方法获取状态码、响应体和响应头等信息。

from urllib.request import urlopen

response = urlopen('http://www.github.com')

html = response.read().decode('utf-8')
print(html)

这个例子中,我们使用了urlopen()方法发起一个GET请求,并将结果存储在response变量中。然后,我们使用response.read()获取响应的字节流,并使用decode()方法将其转换为utf-8编码的html文本。最后,我们将结果输出到控制台。

使用beautifulsoup4库获取url

如果需要从html文本中提取信息,可以使用beautifulsoup4库,它可以将html文本转换为一个可遍历的树形结构,非常方便。

from urllib.request import urlopen
from bs4 import BeautifulSoup

response = urlopen('http://www.github.com')

html = response.read().decode('utf-8')

soup = BeautifulSoup(html, 'html.parser')
print(soup.title.string)

这个例子中,我们使用了urlopen()方法获取http://www.github.com的html文本,并将其转换为BeautifulSoup对象。使用soup.title.string获取了html中的标题,输出到控制台。

以上是三种Python库获取url的方法。如果你需要获取https协议的url,需要使用ssl库验证证书。如果结果需要保存到本地文件,可以使用open方法,再将结果写入文件。如果是漫画等非文本文件,需要使用专门的图像处理库。总之,Python拥有丰富的库,可以让你快速的操作url及其内容,提高代码效率,降低开发难度。