由于一时疏忽,以下代码返回405,用POST方法提交始终无法成功,反复对比后终于发现,我url地址写错了!
url = "http://httpbin.org/get"
这里我跳转到了get方式访问的页面去了,然而我还企图使用post方式去访问造成了405方法不被允许的情况;
收获:据此推测是每个网页它的访问方式有一定的限制,访问方式不对是没办法访问的
#伪装成浏览器
# url = "https://www.douban.com"
url = "http://httpbin.org/get"
#封装一下请求信息
#将要拿去发给浏览器的信息包装成真实浏览器会发的信息
#制作伪装信息,去对应网页找需要的信息
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0"
}
data = bytes(urllib.parse.urlencode({"name":"frok"}),encoding="utf-8")
#将请求信息包装好
# req = urllib.request.Request(url=url,data=data,headers=headers,method="GET")
req = urllib.request.Request(url=url,data=data,headers=headers,method="POST")
#发送请求信息得到响应
response=urllib.request.urlopen(req)
print(response.read().decode("utf-8"))