大安网站建设南昌做seo的公司有哪些
Table of Contents
get 请求
requests.get()
params 参数
json() 请求的是 json格式的可以调用 json()方法
添加headers 请求头
抓取二进制文件
post 请求
响应
判断请求是否成功
高级
文件上传
SSL证书验证verfiy参数改为False
会话维持 session
代理设置
超时设置 timeout
get 请求
requests.get()
import requestsr = requests.get('http://www.baidu.com')print(r.status_code)
print(r.headers)
print(r.cookies)
print(r.content)
print(r.text)
params 参数
import requestsdata = {'name': 'germey','age': 22
}
r = requests.get("http://httpbin.org/get", params=data)
print(r.text)r2 = requests.get('http://httpbin.org/get?name=germey&age=22')
print(r2.text)
json() 请求的是 json格式的可以调用 json()方法
import requestsr = requests.get("https://www.lagou.com/lbs/getAllCitySearchLabels.json")
print(r.json())
print(type(r.json()))
添加headers 请求头
import requestsheaders = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'
}
r = requests.get("https://www.baidu.com",headers=headers)
print(r.text)
抓取二进制文件
import requestsr = requests.get("https://github.com/favicon.ico")
print(r.text)
print(r.content)with open('1.ico','wb') as f:f.write(r.content)
post 请求
import requestsdata = {'name': 'test', 'age': '21','sex':'男'}
r = requests.post("http://httpbin.org/post", data=data)
print(r.text)
响应
import requestsr = requests.get('http://www.baidu.com')
# 状态码
print(type(r.status_code), r.status_code)
# 响应头
print(type(r.headers), r.headers)
# Cookies
print(type(r.cookies), r.cookies)
# 请求 url
print(type(r.url), r.url)
# 请求历史
print(type(r.history), r.history)
判断请求是否成功
import requestsr = requests.get('http://www.baidu.com')
# requests.codes.ok得到的是成功的状态码200
exit() if not r.status_code == requests.codes.ok else print('Request Successfully')
高级
文件上传
import requestsfiles = {'file': open('1.ico', 'rb')}
r = requests.post("http://httpbin.org/post", files=files)
print(r.text)
cookie 模拟登录
import requestsurl = 'https://weibo.com/u/6539720569/home?topnav=1&wvr=6&pids=plc_main&ajaxpagelet=1&ajaxpagelet_v6=1&__ref=%2Fu%2F6539720569%2Fhome%3Ftopnav%3D1%26wvr%3D6&_t=FM_1542900004053124'
h = {'Host': 'weibo.com','Connection': 'keep-alive','Upgrade-Insecure-Requests': '1','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',# 'Referer': 'https://weibo.com/u/6539720569?is_all=1','Accept-Encoding': 'gzip, deflate, br','Accept-Language': 'zh,zh-CN;q=0.9,en;q=0.8','Cookie': 'SINAGLOBAL=94993410627.1666.1520769274152; _s_tentry=cuiqingcai.com; Apache=5017072227083.262.1542629483779; ULV=1542629483995:36:4:1:5017072227083.262.1542629483779:1542205550567; YF-Page-G0=e44a6a701dd9c412116754ca0e3c82c3; login_sid_t=1a7ba97fe27f566ce119097abd18c565; cross_origin_proto=SSL; Ugrow-G0=56862bac2f6bf97368b95873bc687eef; TC-V5-G0=ac3bb62966dad84dafa780689a4f7fc3; wb_view_log=1920*10801; WBtopGlobal_register_version=18608f873d5d88f2; appkey=; TC-Page-G0=9183dd4bc08eff0c7e422b0d2f4eeaec; wb_view_log_6539720569=1920*10801; un=*******; SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9WWEa9ykHUXNGmUlEp4N8evQ5JpX5K2hUgL.Foqfe0.Neo5fSo.2dJLoI7LsUgSuPfxLMNBt; ALF=1574412019; SSOLoginState=1542876019; SCF=AnI7F2A3uDMtu9SYi3j9FdPQsitEYhJntfyXE0_5tz7YOAwXZ7AwlRXenxkj7aWPri2XdxCDtCa9bY0i9InJHI0.; SUB=_2A2528hsjDeRhGeBL6FsW8i7JzTWIHXVVhgvrrDV8PUNbmtAKLWzZkW9NRwIFFJ3DRFJNQh-yiz7GUXwmJX5WcXuB; SUHB=0k1CqncARZEaj7; wvr=6; UOR=,,www.baidu.com',
}
r = requests.get(url,headers=h,verify=False)
print(r.text)
SSL证书验证verfiy参数改为False
import requestsurl = 'https://weibo.com'r = requests.get(url,verify=False)
print(r.text)
会话维持 session
import requestss = requests.Session()
s.get('http://httpbin.org/cookies/set/number/123456789')
r = s.get('http://httpbin.org/cookies')
print(r.text)
代理设置
import requestsproxies = {"http": "http://112.240.176.185:4213","https": "http://112.240.176.185:4213",
}requests.get("https://www.taobao.com", proxies=proxies)
超时设置 timeout
import requestsr = requests.get("https://www.taobao.com", timeout=0.1,verify=False)
print(r.status_code)