urllib

import urllib.request
import urllib.parse
# 获取一个get请求
# response = urllib.request.urlopen("http://www.baidu.com")        #通过urllib.request库中的urlopen方法打开一个网页,并将获取到的网页内容返回保存到response
# print(response.read().decode("utf-8"))  #对获取到网页源码进行utf-8解码


# 获取一个post请求 httpbin.org(A simple HTTP Request & Response Service. )
'''
import urllib.parse
data = bytes(urllib.parse.urlencode({"hello":"world!"}),encoding="utf-8")       #表单,bytes()转化成一个二进制的数据包
response = urllib.request.urlopen("http://httpbin.org/post",data = data)
print(response.read().decode("utf-8"))
'''
#超时处理
'''
try:
    response = urllib.request.urlopen("http://httpbin.org/get",timeout=0.01)
    print(response.read().decode("utf-8"))
except urllib.error.URLError as e :
    print("time out!")
'''
'''
response = urllib.request.urlopen("http://www.baidu.com")
# print(response.status)      #获取状态码,如200,404,等
print(response.getheaders())    #查看的是“F12-->network-->Headers的response headers的信息
print(response.getheader("Cache-Control"))      #可以查看其中一个参数的信息
'''
'''
url = "http://httpbin.org/post"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
}
data = bytes(urllib.parse.urlencode({'name':'eric'}),encoding="utf-8")
req = urllib.request.Request(url=url,data=data,headers=headers,method="POST")
response = urllib.request.urlopen(req)
print(req)
print(response.read().decode("utf-8"))
'''

url = "https://movie.douban.com"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
}
# data = bytes(urllib.parse.urlencode({'name':'eric'}),encoding="utf-8")
# req = urllib.request.Request(url=url,data=data,headers=headers,method="POST")
req = urllib.request.Request(url=url,headers=headers)
response = urllib.request.urlopen(req)
print(response.read().decode("utf-8"))
原文地址:https://www.cnblogs.com/uphold/p/13843660.html