@chenwei123
2018-02-07T09:25:35.000000Z
字数 1800
阅读 463
Python
import requestsr=requests.get('https://www.douban.com/') #豆瓣首页r.status_code #200r.text#结果:<!DOCTYPE HTML>\n<html lang="zh-cmn-Hans" class="">\n<head>\n<meta charset="UTF-8">\n<meta name="description" content="提供图书、电影、音乐唱片的推荐、评论和价格比较,以及城市独特的文化生活。...">
import requestsr=requests.get('https://www.douban.com/search', params={'q':'python','cat':'1001'})r.url #实际请求的 url 'https://www.douban.com/search?q=python&cat=1001'r.encoding #检测编码 'utf-8'r.content #获得 bytes 对象#b'<!DOCTYPE html>\n<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n...'
import requestsr=requests.get('https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20weather.forecast%20where%20woeid%20%3D%202151330&format=json')r.json()#{'query':{'count':1, 'created':'2017-12-14T02:35:49Z', ...}}
import requestsr = requests.get('https://www.douban.com/', headers={'User-Agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit'})
r = requests.get(url, timeout=2.5) #2.5秒后超时
r.headers #{Content-Type': 'text/html; charset=utf-8', 'Transfer-Encoding': 'chunked', 'Content-Encoding': 'gzip', ...}r.headers['Content-Type'] #'text/html; charset=utf-8'
r.cookies['ts'] #example_cookie_12345'
cs={'token':'12345', 'status':'working'}r=requests.get(url, cookies=cs)
data 参数作为 post 请求的数据
import requestsr = requests.post('https://accounts.douban.com/login', data={'form_email':'abc@example.com', 'form_password':'123456'})
requests默认使用application/x-www-form-urlencoded编码。要传递json数据可以使用以下形式:
import requestsparams = {'key':'value'}r= requests.post(url, json=params) #内部自动序列化为 JSON
import requestsupload_files = {'file':open('report.xls', 'rb')}r = requests.post(url, files=upload_files)
把
post()方法替换为put(),delete()等,就可以以PUT或DELETE方式请求资源。