HTTP GET

Python 2.x <= 2.7

Python 2

import urllib
response = urllib.urlopen('http://stackoverflow.com/documentation/')

使用 urllib.urlopen() 將返回一個響應物件,該物件可以像檔案一樣處理。

print response.code
# Prints: 200

response.code 表示 http 返回值。200 可以,404 是 NotFound 等。

print response.read()
'<!DOCTYPE html>\r\n<html>\r\n<head>\r\n\r\n<title>Documentation - Stack. etc'

response.read()response.readlines() 可用於讀取請求返回的實際 html 檔案。這些方法與 file.read*類似

Python 3.x >= 3.0

Python 3

import urllib.request

print(urllib.request.urlopen("http://stackoverflow.com/documentation/"))
# Prints: <http.client.HTTPResponse at 0x7f37a97e3b00>

response = urllib.request.urlopen("http://stackoverflow.com/documentation/")

print(response.code)
# Prints: 200
print(response.read())
# Prints: b'<!DOCTYPE html>\r\n<html>\r\n<head>\r\n\r\n<title>Documentation - Stack Overflow</title> 

該模組已針對 Python 3.x 進行了更新,但用例基本保持不變。urllib.request.urlopen 將返回類似檔案的物件。