PYTHON爬虫(requests库详解)

一 GET请求

1 带参数的get请求

import requests
dict2={
   'name':'kaka',
   'password':'ab123' 
}
resp = requests.get('https://httpbin.org/get',params=dict2)
print (resp.text)

2 json解析 

import requests
import json

resp = requests.get('https://httpbin.org/get')
print (resp.json())
print(json.loads(resp.text))

3 获取二进制数据 

import requests
resp = requests.get('https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/logo_white_fe6da1ec.png')
with open('e:\\1.png','wb') as f:
    f.write(resp.content)
    f.close()

4 添加headers

  • 某些网站需要验证请求头的信息
import requests
requests.get('.........',headers=headers)

二 POST请求

  • 方法类似get请求的方法,请求体用一个字典封装(data)
requests.post('',data=data,headers=headers)

三 高级操作

1 文件上传

import requests
file={
    '12.png':open('e:\\1.png','rb')
}
resp=requests.post('https://httpbin.org/post',files=file)
print(resp.text)

2 获取cookie

import requests

resp=requests.get('https://www.baidu.com')
for k,v in resp.cookies.items():
    print('key='+k+'  value='+v)

3 登录状态保持

  • response.cookies
import requests
se = requests.Session()

resp=se.get('https://httpbin.org/cookies/set/name/kaka')
resp2 = se.get('https://httpbin.org/cookies')
print(resp2.text)

4 证书验证

  • get('.....',verify=false)

5 代理设置

  • get('.....',proxys=proxys)

6 超时设置

  • get('.....',timeout=1)

7 认证设置

  • get('.....',auth=('kaka','123'))

8 异常处理

  • 保证程序的正常运行

 

猜你喜欢

转载自blog.csdn.net/stanwuc/article/details/81939572