安装 pip install requests
import requests
url = 'http://www.baidu.com'
res = requests.get(url)
print(res.status_code)#打印请求状态
print(res.cookies)#打印cookies
print(res.text)#打印响应内容字符串
print(res.content)#打印二进制内容,比如一些图片,视频这些内容。
http://httpbin.org/用来测试你HTTP请求的真实信息,可以用来测试爬虫代码请求信息,测试一下
res = requests.get('http://httpbin.org/get',
params={'name':'nextbox','age':32,'sex':'male'})#get方法传入一个参数,服务器响应后输出
print(res.text)
{
"args": {
"age": "32",
"name": "nextbox",
"sex": "male"
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Connection": "close",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.18.4"
},
"origin": "171.83.109.125",
"url": "http://httpbin.org/get?name=nextbox&age=32&sex=male"
}
res = requests.get('http://httpbin.org/get',headers={"User-Agent":'I use chrome'})#传入头部参数,可以发现头部信息变了
print(res.text)
{
"args": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Connection": "close",
"Host": "httpbin.org",
"User-Agent": "I use chrome"
},
"origin": "171.83.109.125",
"url": "http://httpbin.org/get"
}
再访问知乎的时候,如果不修改请求头,会被拒绝访问,可以说知乎有检查请求头反爬机制的
res = requests.post('http://httpbin.org/post',data={'age':80},headers={'User-Agent':'chrome'})#pos方法传入的data参数,在响应的form数据中显示
print(res.json())
{'args': {}, 'data': '', 'files': {}, 'form': {'age': '80'}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Connection': 'close', 'Content-Length': '6', 'Content-Type': 'application/x-www-form-urlencoded', 'Host': 'httpbin.org', 'User-Agent': 'chrome'}, 'json': None, 'origin': '171.83.109.125', 'url': 'http://httpbin.org/post'}
requests.post(url,files=files)#files可以给网站上传文件
requests.get(url,verify=False)#verify参数,忽视证书验证
requests.get(url,cet=('证书',‘key’))#可以上传证书
requests.get(url,proxies=proxies)#设置IP代理
proxies={'http':'http://10.10.127.0'
'https':'https://10.10.120.36}
proxies={'http':'http://user:password@127.10.20.36'}#有账号密码的IP代理
requests.get(url,timeout)#设置timeout可以在访问网页是,没有在知道时间内响应就抛出异常(RealTimeout)
requests.get(url,auth={'useer':'password'})#需要认证网络访问